- Two 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].
问题链接:https://leetcode.com/problems/two-sum/
问题简述:给一个整型数组和目标数,当数组的两个元素之和等于目标数,则返回向量
问题分析:
1.对向量接触不多,存在困难:向量的长度,向量的引用,向量的i位元素
2.如何返回长度为2 的向量。
3.如何找到符合要求的x和y
程序说明:
1.向量长度 vector <int>V(10,0) ; V.size(); vector<int>&V; V[i]
2.思路:找到x和y后;把x和y赋值给一个新的向量长度为2的向量,再返回该向量
3.思路:利用两次for循环进行查找,注意i J j的初始和结尾
程序如下:
class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target)
{
vector <int>V(2,0);
for(int i=0;i<nums.size();i++)
{
for(int j=i+1;j<nums.size();j++)
{
if(nums[i]+nums[j]==target)
{
V[0]=i;V[1]=j;
}
}
}
return V;
}
};