1. Two Sum
来源:互联网 发布:凡人修仙传优化补丁 编辑:程序博客网 时间:2024/06/15 20:24
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.
Example:
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
UPDATE (2016/2/13):
The return format had been changed to zero-based indices. Please read the above updated description carefully.
思路:开始想到的是sort,然后用首尾双指针的方法,但是这个要返回index而不是值,sort完后index就变了。
class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> ans; if(nums.empty()) return ans; unordered_map<int,int> data; for(int i=0; i < nums.size(); i++) { if(data.find(nums[i]) == data.end()) { data[nums[i]] = i; } int j = target - nums[i]; if(data.find(j)!=data.end()) { if(data[j] != i) { ans.push_back(i); ans.push_back(data[j]); return ans; } } } return ans; }};
0 0
- 1. Two Sum && 167. Two Sum II
- LeetCode 1. Two Sum
- [LeetCode]1.Two Sum
- LeetCode 1.Two Sum
- LeetCode --- 1. Two Sum
- 1.Two Sum
- [Leetcode] 1. Two Sum
- leetcode---1.Two sum
- 1.Two Sum
- [Leetcode] 1. Two Sum
- LeetCode 1.Two Sum
- 1. Two Sum
- 1. Two Sum
- 1. Two Sum Ruby
- LeetCode 1.Two Sum
- LeetCode 1.Two Sum
- 1. Two Sum
- 1.Two Sum
- React Native之Modal实现自定义Dialog
- [leetcode] 290. Word Pattern
- Android 存储数据之1 读取文件和存储文件
- c++之STL(9)重载函数调用操作符 函数对象 谓词
- Quartz2D-下载进度条
- 1. Two Sum
- JavaWeb学习总结(一)——JavaWeb开发入门
- java-基础--多线程理论知识
- C++ 模板和 C# 泛型之间的区别(C# 编程)
- JVM的线程内存模式与锁分析
- linux常用命令及用法
- OI路上-NOIP100天冲刺计划
- 野狗API的初步使用
- Java_编程实例_需求三