美文网首页
LeetCode - TwoSum

LeetCode - TwoSum

作者: 三生之二 | 来源:发表于2018-10-15 21:59 被阅读0次

    给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。

    你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。

    示例:

    给定 nums = [2, 7, 11, 15], target = 9

    因为 nums[0] + nums[1] = 2 + 7 = 9
    所以返回 [0, 1]

    class Solution {
    public:
        vector<int> twoSum(vector<int>& nums, int target) {
            map <int, int> loc;
            for (int i = 0; i < (int)nums.size(); i++)
            {
                int num = nums[i];
                auto finded = loc.find(target - num);
                if (finded == loc.end())
                {
                    loc[num] = i;
                }
                else
                {
                    return{finded->second, i};
                }
            }
            return{ -1, -1};
        }
    };
    

    相关文章

      网友评论

          本文标题:LeetCode - TwoSum

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