Title: Merge Stored Array 167
Difficulty:Easy
原题leetcode地址:https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/
采用二分法(数组已经是排序的)
1. 时间&空间复杂度如下:
时间复杂度:O(logn)。
空间复杂度:O(1),申请了两个长度的数组O(2) -> O(1)。
/**
* 二分法
* @param numbers
* @param target
* @return
*/
public static int[] twoSum(int[] numbers, int target) {
int index[] = new int[]{0, 1};
int start = 0;
int end = numbers.length - 1;
while (start < end) {
if (numbers[start] + numbers[end] == target) {
index[0] = start + 1;
index[1] = end + 1;
break;
}
else if (numbers[start] + numbers[end] > target) {
end--;
}
else {
start++;
}
}
return index;
}