07:二分查找
1、二分查找针对的是一个有序的数据集合,查找思想有点类似分治思想。每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为 0
2、代码
循环退出条件==》low<=high
mid的取值==》low + (high - low)/2 low + ((high - low) >> 1)
low和high的更新==》low=mid+1 high=mid-1
3、应用场景==》二分查找依赖的是顺序表结构,简单点说就是数组;二分查找针对的是有序数据;数据量太小不适合二分查找;数据量太大也不适合二分查找。
4、如何快速定位IP对应的省份地址
5、二分查找的变形==》
查找第一个值等于给定值的元素
查找最后一个值等于给定值的元素
查找第一个大于等于给定值的元素
查找最后一个小于等于给定值的元素