美文网首页
两数之和

两数之和

作者: 沐一同学 | 来源:发表于2019-05-21 22:53 被阅读0次

    给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

    你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

    /**

    * Note: The returned array must be malloced, assume caller calls free().

    */

    int* twoSum(int* nums, int numsSize, int target, int* returnSize){

        int* d = NULL;

        int i,j;

        if (!nums || !returnSize)

        {

            return NULL;

        }

        *returnSize = 0;

        if (numsSize < 2)

        {

            return NULL;

        }

        d = malloc(sizeof(int)*3);

        if (!d)

        {

            return NULL;

        }

        for (i=0; i < numsSize; i ++)

        {

            for (j=i+1; j < numsSize; j++)

            {

                if (nums[i] + nums[j] == target)

                {

                    *returnSize = 2;

                    d[0] = i;

                    d[1] = j;

                    d[2] = -1;

                    return d;

                }

            }

        }

        return 0;

    }

    相关文章

      网友评论

          本文标题:两数之和

          本文链接:https://www.haomeiwen.com/subject/exqezqtx.html