leetcode ----16. 3Sum Closest
2016-09-19 15:01
393 查看
int threeSumClosest(vector<int>& nums, int target) { sort(nums.begin(),nums.end()); int close = nums[0]+nums[1]+nums[2];//初始化close为最小前三项的和 for(int i=nums.size()-1;i>=2;i--)//从最后一个元素开始遍历 { int start = 0; int end = i-1; while(start<end)//终止条件 { int sum = nums[start]+nums[end]+nums[i];//临时和 if(abs(sum-target)<abs(close-target))//如果差的绝对值比close小,把sum赋值给sum close = sum; else if(sum<target)//如果小于target,索引start++ start++; else if(sum>target)//如果大于target,索引end-- end--; else // 由于只存在一个解,相等的话直接返回结果 return close; } } return close; }
相关文章推荐
- LeetCode-16-3Sum-Closest 贪心
- LeetCode16——3Sum Closest
- leetcode 16 3Sum Closest
- LeetCode16 3Sum Closest
- LeetCode 16 3Sum Closest
- 【leetcode】【16】3Sum Closest
- leetcode question 16: 3Sum Closest
- LeetCode - 16. 3Sum Closest
- leetcode--16. 3Sum Closest
- leetcode解题之 16. 3Sum Closest Java版(结果离目标值最近三个数字和)
- LeetCode16 3Sum Closest
- [LeetCode16]3Sum Closest
- LeetCode 16 - 3Sum Closest
- leetcode——16——3Sum Closest
- LeetCode 16: 3Sum Closest
- leetcode_16题——3Sum Closest(两个指针)
- leetcode 16 -- 3Sum Closest
- LeetCode 16: 3Sum Closest
- LeetCode 16_3Sum Closest
- leetcode[16]3Sum Closest