LeetCode1.The Sum

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode1.The Sum相关的知识,希望对你有一定的参考价值。

Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.

Example:
Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].

返回一个整形数组的两个索引,他们对应的数之和等于指定的目标值。

你可以假设这个目标值一定有解,但是不能使用数组中同一个数两次。

例如 nums=[2,7,11,15],target=9. 因为nums[0]+nums[1]=target.

所以return [0,1].

 1 class Solution {
 2 public:
 3     vector<int> twoSum(vector<int>& nums, int target) {
 4         unordered_map<int,int> hash;
 5         vector<int> result;
 6         for(int i=0;i<nums.size();++i){
 7             int theRest=target-nums[i];
 8             if(hash.find(theRest)!=hash.end()){
 9                 result.push_back(hash[theRest]);
10                 result.push_back(i);
11                 return result;
12             }
13             hash[nums[i]]=i;
14         }
15         return result;
16     }
17 };

 



以上是关于LeetCode1.The Sum的主要内容,如果未能解决你的问题,请参考以下文章

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段

append() 在这个代码片段中是如何工作的?与特定变量混淆[重复]

1049 数列的片段和

Python函数

hihocoder第233周

1104 Sum of Number Segments(二刷)