美文网首页
领扣之两数之和

领扣之两数之和

作者: 拉普不再拉丝 | 来源:发表于2018-11-20 21:19 被阅读0次

    给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的两个整数。

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

    示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]

    暴力解法:采用C语言编程,采用两个循环,判断数组中两个数是否等于目标值。具体如下:

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

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

        int i,j;

        int *a;

        a = (int*)malloc(sizeof(int) * 2);

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

            int flag = 0;

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

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

                    a[0] = i;

                    a[1] = j;

                    flag = 1;

                    break;

                }

            }

            if (flag == 1)

                break;

        }

        return a;

    }

    遇到问题,关于malloc的使用。

    相关文章

      网友评论

          本文标题:领扣之两数之和

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