LeetCode-Two Sum-解题报告

原创 2015年07月08日 21:32:42

原题链接 https://leetcode.com/problems/two-sum/

Given an array of integers, find two numbers such that they add up to a specific target number.

The function twoSum should return indices of the two numbers such that they add up to the target, where index1 must be less than index2. Please note that your returned answers (both index1 and index2) are not zero-based.

You may assume that each input would have exactly one solution.

Input: numbers={2, 7, 11, 15}, target=9
Output: index1=1, index2=2 


在数组中找到2个数的和等于目标数。


使用一张hash表讲每个数出现的位置记录下来。


然后开始遍历数组。对于nums[i], 如果target-nums[i] 如果在hash表中存在 就可以结束遍历返回答案了。


class Solution {
public:
	vector<int> twoSum(vector<int>& nums, int target) {
		map<int, vector<int> >Hash;
		vector<int>ans;
		int i = 1;
		for (auto &item : nums)
		{
			Hash[item].push_back(i++);
		}
		i = 1;
		for (auto &item : nums)
		{
			vector<int>& tmp = Hash[target - item];
			if (!tmp.empty())
			{
				for (auto &index : tmp)
				{
					if (index != i)
					{
						ans.push_back(i);
						ans.push_back(index);
						return ans;
					}
				}
			}
			i++;
		}
		return ans;
	}
};


版权声明:

相关文章推荐

LeetCode 1.Two Sum 解题报告

LeetCode 1. Two Sum 解题报告

Leetcode (1) Two Sum 解题报告

Leetcode (1) Two Sum 在一个数组中找到两个数,使其和为目标值,返回下标。

LeetCode解题报告 1. Two Sum[easy]

前言 之前听说过很多次LeetCode在面试中的大量应用,通过本次算法课可以开始题目的练习觉得还是很不错的。 题目描述1. Two Sum[easy] Given an array of intege...

leetcode解题报告1. Two Sum

leetcode解题报告1. Two Sum题目地址 难度是easy题目描述:给定一个整数数组和一个目标结果,找出数组里两个数,使得两个数的和是目标结果。每个数不能重复使用。保证有且只有一个解。我的思...

[Leetcode] 167. Two Sum II - Input array is sorted 解题报告

题目: Given an array of integers that is already sorted in ascending order, find two numbers such...

[Leetcode] 1. Two Sum 解题报告

题目描述: Given an array of integers, return indices of the two numbers such that they add up to a s...

[LeetCode] Two Sum 解题报告

—— write for my baby, mua [题目] Given an array of integers, return indices of the two numbers suc...

LeetCode 167.Two Sum II 解题报告

LeetCode 167.Two Sum II 解题报告

LeetCode 421 Maximum XOR of Two Numbers in an Array 解题报告

一道有意思的题目, 用到了异或运算的一个小特性. LeetCode 421 Maximum XOR of Two Numbers in an Array. Given a non-empty arra...

LeetCode 350. Intersection of Two Array II 解题报告

LeetCode 350. Intersection of Two Array II 解题报告
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)