二分查找

二分查找的写法(有两种,这里只记录第一种):

 

如果区间是[a,b],即可以取到low、high,则mid=(low+high)/2:

1.while(low <= high){..},注意此处是" <= "

2.if(v[mid] < target){low ++;}

3.if(v[mid] > target){high --;}

这里条件控制一定要明确:<=、low++、high--。

补充:while(low <= high)而非while(low < high)的原因:这是在闭区间[low,high]查找,右边的high是可以取到的,所以查询条件里要把low==high的也考虑到。

 

相关:双指针、二分查找、快慢指针、滑动窗口、求2Sum、nSum。

posted @ 2024-05-24 09:08  _titleInfo  阅读(2)  评论(0编辑  收藏  举报
//雪花飘落效果