Two Sum II - Input array is sorted

来源:互联网 发布:淘宝商品链接提取 编辑:程序博客网 时间:2024/05/22 07:52

这道题固然用两根指针能做,自己之后还要想一下二叉做法,候着吧。

public class Solution {    public int[] twoSum(int[] numbers, int target) {        int [] result = new int[2];        if (numbers == null || numbers.length < 2) {            return result;        }        int left = 0, right = numbers.length - 1;        while (left < right) {            int num = numbers[left] + numbers[right];            if (num > target) {                right--;            } else if (num < target) {                left++;            } else {                result[0] = left + 1;                result[1] = right + 1;                return result;            }        }        return null;        // int [] result = new int[2];        // if (numbers == null || numbers.length < 2) {        //     return result;        // }        // int left = 0, right = numbers.length - 1;        // while (left + 1 < right) {        //     int mid = left + (right - left) / 2;        //     if (numbers[mid] <= target) {        //         right = mid;        //         break;        //     } else {        //         left = mid;        //     }        // }    }}


0 0
原创粉丝点击