167. Two Sum II - Input array is sorted

原題

  • 題目描述:在有序數組中返回數組值相加爲目標值的兩個下標
  • 思路:一左一右的值相加和目標值大小作比較,然後根據結果,縮小左右位置,直到相等
class Solution {
    public int[] twoSum(int[] numbers, int target) {
        int l=0;
        int r=numbers.length-1;

        while(l<r){
            if(numbers[l]+numbers[r]==target){
                int[] res=new int[2];
                res[0]=l+1;
                res[1]=r+1;
                return res;
            }else if(numbers[l]+numbers[r]<target){
                l++;
            }else{
                r--;
            }
        }
        return new int[0];
    }
}
發佈了80 篇原創文章 · 獲贊 35 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章