[leetcode][easy][Array][1][Two Sum]
Posted libinyl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[leetcode][easy][Array][1][Two Sum]相关的知识,希望对你有一定的参考价值。
Two Sum
题目链接
题目描述
给定一个int
类型数组,要求返回其中两个数字的索引,使得它们的和为指定的目标值。
约定
- 每个给定输入有且只有1种结果。
- 返回的两个索引不能为同一个值。
示例
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
解答
class Solution
{
public:
vector<int> twoSum(vector<int>& nums, int target)
{
map<int, int> mapValIdx;
for (int i = 0; i < nums.size(); i++)
{
map<int,int>::iterator iter = mapValIdx.find(target - nums[i]);
if (iter != mapValIdx.end())
{
return { iter->second,i };
}
else
{
mapValIdx.insert(make_pair(nums[i], i));
}
}
}
};
以上是关于[leetcode][easy][Array][1][Two Sum]的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode Array Easy 1. Two Sum
LeetCode # Array # Easy # 665. Non-decreasing Array
leetcode_easy1486. XOR Operation in an Array
LeetCode Array Easy 283. Move Zeroes