Q:
A: binary search, pay attention to boundary cases
java version 1
public class Solution {
public int searchInsert(int[] nums, int target) {
if (nums == null || nums.length == 0) return 0;
int start = 0;
int end = nums.length-1;
while(start +1 < end){
int mid = start + (end - start) / 2;
if (nums[mid] == target){
return mid;
}else if (nums[mid] < target){
start = mid;
}else{
end = mid;
}
}
if (nums[start] >= target) return start;
else if (target <= nums[end]) return end;
else return end+1;
}
}
Leetcode 35 Search insert position
原文:http://www.cnblogs.com/nobody2somebody/p/5146216.html