[leetcode]16. 3Sum Closest

来源:互联网 发布:淘宝网热线 编辑:程序博客网 时间:2024/06/04 18:18
class Solution {public:    int threeSumClosest(vector<int>& nums, int target)    {        int sum;        int ret;        int close=65535;                sort(nums.begin(),nums.end());                for(int i=0;i<nums.size();i++)//注意这里不用排重,例如【1,1,1,1】return 3        {            int j=i+1;            int k=nums.size()-1;                            while(j<k)            {                sum=nums[i]+nums[j]+nums[k];                if(abs(sum-target)<close)                {                    close=abs(sum-target);                    ret=sum;                }                if(sum==target)                {                    return sum;                }                else if(sum<target)                {                    j++;                }                else                {                    k--;                }            }        }        return ret;    }};

0 0
原创粉丝点击