二分查找基础篇。
题目
class Solution {
public int searchInsert(int[] nums, int target) {
int l = 0, r = nums.length - 1;
while(l <= r) {
int mid = l+((r-l)>>1);//(l+r)/2
if(nums[mid]<target)
l=mid+1;
else r=mid-1;
}
return l;
//处理边界,设定数组的左半部分l跟右半部分r之间划一条线
//l左边的部分全部小于target,并以r结尾;
//r右边的部分全部大于等于target,并以l为首;
//所以target会在l的位置
}
}