找回密码
 立即注册
首页 编程领域 编程板块 二分查找

iOS 二分查找

2023-2-22 15:31:32 评论(0)
如果要在一堆有序的数列中去查找是否有自己想找的数字,如果一个一个去找,数据变大就不好找了。但是如果使用二分查找就会很方便。
例如你要从2的32次方查找,最坏的情况一个一个找就要找2的32次方才能找到,而二分查找最坏只需32次。





首先第一步就是找中间值,这时候相当于将范围减半,如果你比这个值大,那就在中间值到最大值之间,再去找这个新范围里的中间值,再通过这个方法使得范围减半,直到最后缩小到一个为止。
我更喜欢把它理解为下限和上限,初始的上下限就是最大值和最小值,当你求出中间值比你要找的数大,说明上限变成了中间值-1,如图写出代码。找的值就是新范围最大值最小值的平均数,目的就是每次让范围减半,故叫做二分查找。
当然如果是个乱序数列也可以先用冒泡排序再使用二分查找,但是不能找出相应的坐标,因为冒泡排序打乱了原来的坐标了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

使用道具 举报

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们(3513994353@qq.com)。
您需要登录后才可以回帖 登录 | 立即注册
楼主
老表谈代码

关注0

粉丝0

帖子4

最新动态