Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 4fab7e0

Browse files
Improvement
Signed-off-by: begeekmyfriend <begeekmyfriend@gmail.com>
1 parent ea7312c commit 4fab7e0

File tree

5 files changed

+20
-15
lines changed

5 files changed

+20
-15
lines changed

‎0015_three_sum/three_sum.c‎

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ int** threeSum(int* nums, int numsSize, int* returnSize, int** returnColumnSizes
4343
int i, j, capacity = 50000;
4444
int **results = malloc(capacity * sizeof(int *));
4545
for (i = 0; i < numsSize - 2; i++) {
46-
if (i == 0 || i > 0 && nums[i] != nums[i - 1]) {
46+
if (i == 0 || (i > 0 && nums[i] != nums[i - 1])) {
4747
two_sum(nums, i + 1, numsSize - 1, -nums[i], results, returnSize);
4848
}
4949
}
@@ -58,14 +58,18 @@ int** threeSum(int* nums, int numsSize, int* returnSize, int** returnColumnSizes
5858

5959
int main(void)
6060
{
61-
int i, count;
61+
int i, j, count;
6262
//int nums[] = { -1, 0, 1, 2, -1, -4 };
6363
//int nums[] = { 0, 0, 0 };
6464
//int nums[] = { -1, 0, 1, 0 };
6565
int nums[] = {-2,0,0,2,2};
66-
int **triplets = threeSum(nums, sizeof(nums) / sizeof(*nums), &count);
66+
int *col_sizes;
67+
int **triplets = threeSum(nums, sizeof(nums) / sizeof(*nums), &count, &col_sizes);
6768
for (i = 0; i < count; i++) {
68-
printf("%d %d %d\n", triplets[i][0], triplets[i][1], triplets[i][2]);
69+
for (j = 0; j < col_sizes[i]; j++) {
70+
printf("%d \n", triplets[i][j]);
71+
}
72+
printf("\n");
6973
}
7074

7175
return 0;

‎0018_four_sum/four_sum.c‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,13 +68,16 @@ int** fourSum(int* nums, int numsSize, int target, int* returnSize, int** return
6868

6969
int main(void)
7070
{
71-
int i, count, target = 11, *col_sizes;
71+
int i, j, count, target = 11, *col_sizes;
7272
//int nums[] = { 1, 0, -1, 0, -2, 2 };
7373
//int nums[] = { -3, -2, -1, 0, 0, 1, 2, 3 };
7474
int nums[] = { 0, 1, 5, 0, 1, 5, 5, -4 };
7575
int **quadruplets = fourSum(nums, sizeof(nums) / sizeof(*nums), target, &count, &col_sizes);
7676
for (i = 0; i < count; i++) {
77-
printf("%d %d %d %d\n", quadruplets[i][0], quadruplets[i][1], quadruplets[i][2], quadruplets[i][3]);
77+
for (j = 0; j < col_sizes[i]; j++) {
78+
printf("%d ", quadruplets[i][j]);
79+
}
80+
printf("\n");
7881
}
7982

8083
return 0;

‎0046_permutations/permutations.c‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,10 @@ int main(int argc, char **argv)
8888
nums[i] = atoi(argv[i + 1]);
8989
}
9090

91-
int *size;
92-
int **lists = permute(nums, argc - 1, &count, &size);
91+
int *col_sizes;
92+
int **lists = permute(nums, argc - 1, &count, &col_sizes);
9393
for (i = 0; i < count; i++) {
94-
for (j = 0; j < argc-1; j++) {
94+
for (j = 0; j < col_sizes[i]; j++) {
9595
printf("%d", lists[i][j]);
9696
}
9797
putchar('\n');

‎0047_permutations_ii/permutations.c‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,10 @@ int main(int argc, char **argv)
7272
nums[i] = atoi(argv[i + 1]);
7373
}
7474

75-
int *size;
76-
int **lists = permute(nums, argc - 1, &count, &size);
75+
int *col_sizes;
76+
int **lists = permute(nums, argc - 1, &count, &col_sizes);
7777
for (i = 0; i < count; i++) {
78-
for (j = 0; j < argc-1; j++) {
78+
for (j = 0; j < col_sizes[i]; j++) {
7979
printf("%d", lists[i][j]);
8080
}
8181
putchar('\n');

‎0199_binary_tree_right_side_view/bst_right.c‎

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,7 @@ static void node_free(struct queue_node *qn, struct list_head *free_list)
9090
}
9191

9292
/**
93-
** Return an array of arrays of size *returnSize.
94-
** The sizes of the arrays are returned as *returnColumnSizes array.
95-
** Note: Both returned array and *returnColumnSizes array must be malloced, assume caller calls free().
93+
** The returned array must be malloced, assume caller calls free().
9694
**/
9795
static int* rightSideView(struct TreeNode* root, int* returnSize)
9896
{

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /