leetcode-1-Two Sum
2017-07-17 21:36
417 查看
难度:
easy描述:
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].
我的解答
class Solution { public: vector<int> twoSum(vector<int>& nums, int target) { int size = nums.size(); vector<int> temp; for(int i = 0; i < size;i++) for(int j=i+1;j < size;j++) { if(nums[i]+nums[j]==target) { temp.push_back(i); temp.push_back(j); } } return temp; } };
更好的解答
public int[] twoSum(int[] nums, int target) { Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length; i++) { map.put(nums[i], i); } for (int i = 0; i < nums.length; i++) { int complement = target - nums[i]; if (map.containsKey(complement) && map.get(complement) != i) { return new int[] { i, map.get(complement) }; } } throw new IllegalArgumentException("No two sum solution"); }
相关文章推荐
- leetcode(1)_Two Sum
- [LeetCode]Two Sum
- Leetcode-1. Two Sum
- leetcode---------------Two Sum
- {LeetCode} 1. Two Sum
- [LeetCode][1 Two Sum]Java实现
- LeetCode 1 Two Sum 题解
- [LeetCode] Two sum
- leetcode 1 Two Sum
- LeetCode之1.Two Sum
- [Leetcode]Two Sum
- leetcode001——Two Sum
- [LeetCode] Two Sum, Solution
- LeetCode || Two Sum
- [LeetCode]1. Two Sum
- LeetCode #1: Two Sum
- [leetcode]1. Two Sum
- leetcode 001 Two Sum
- Leetcode-01 two sum
- leetcode第1题-two Sum