leetcode算法题总结之Two Sum

来源:互联网 发布:linux查看sas hba卡 编辑:程序博客网 时间:2024/04/30 00:28

Tags:Array and HashTable

我的解法:
#include<stdio.h>
#include<math.h>

int main(void){
    int num[4];
    int target;
    int i,j;
    printf("please input 4 numbers:\n");
    for(i=0;i<4;i++)
    {
        scanf("%d",&num[i]);
    }
    printf("please input the target number:\n");
    scanf("%d",&target);
    for(i=0;i<4;i++)
    {
        for(j=i+1;j<4;j++)
        {
            if((num[i]+num[j])==target)
                printf("%d %d\n",i,j);
        }
    }
    return 0;
}
我在leet code的解法:
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
int* twoSum(int* nums, int numsSize, int target) {
    int *results=malloc(numsSize*sizeof(int));
    int i,j;
    for(i=0;i<numsSize;i++){
        for(j=i+1;j<numsSize;j++){
            if((nums[i]+nums[j])==target){
                results[0]=i;
                results[1]=j;
                printf("The result index is%d and %d.\n",results[0],results[1]);
            }
        }
    }
    return results;
}

0 0
原创粉丝点击