leetcode ----167. Two Sum II - Input array is sorted

来源:互联网 发布:编程语言排行榜2017 7 编辑:程序博客网 时间:2024/05/27 00:40
    int helper(int left,int right,int target,vector<int>&numbers)    {                while(left<=right)        {            int mid = (right+left)/2;            if(numbers[mid]==target)            {                return mid;            }            if(numbers[mid]<target)            {                left = mid+1;            }            else                right = mid-1;                       }        return -1;    }    vector<int> twoSum(vector<int>& numbers, int target)     {        vector<int> res;        for(int i=0;i<numbers.size();i++)        {            int flag = helper(i+1,numbers.size()-1,target-numbers[i],numbers);            if(flag!=-1)            {                res.push_back(i+1);                res.push_back(flag+1);                break;            }        }        return res;    }

0 0