从有序的数组中通过中间值来寻找最佳匹配。
例如:nums[2,4,5,6,7]中target为2,则先比较nums[(0+4)/2]与2的大小,若2小于该值则选择其值左边剩下的数组来筛选,大于则右边。
大致思路:
从数组中找出一个:
let left = 1;
let right = n;
while(left < right){
const mid = Math.floor(left + (right - left)/2);
if(nums[mid]>=target)
right = mid;
else
left = mid + 1 ;
}
return left;
找出target在数组中所应该在的位置。