解题思路
暴力法,两个指针,其中第二个指针比第一个指针快一个index,遍历整个array并且相加。找到符合target的值的时候返回# CodeStyle实际上还可以不用Boolean作退出判断,只需要break就好。
代码
class Solution
{
public:
vector<int> twoSum(vector<int>& nums, int target)
{
vector<int> result;
int sum = 0;
int nextSum = 0;
int addition = 0;
bool done = false;
for (size_t loop= 0; loop < nums.size() && !done; loop++)
{
sum = nums.at(loop);
for (size_t nextNum= loop + 1; nextNum< nums.size() && !done; nextNum++)
{
nextSum = nums.at(nextNum);
addition = sum + nextSum;
if (addition == target)
{
result.push_back(loop);
result.push_back(nextNum);
done = true;
}
}
}
return result;
}
};