在计算机科学中。二分搜索(英语:binary search)。也称折半搜索(英语:half-interval search)[1]、对数搜索(英语:logarithmic search)[2]。是一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始。如果中间元素正好是要查找的元素。则搜索过程结束;如果某一特定元素大于或者小于中间元素。则在数组大于或小于中间元素的那一半中查找。而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空。则代表找不到。这种搜索算法每一次比较都使搜索范围缩小一半。
输出结果是:
Bisect模块提供的函数有:
(1)查找
bisect.bisect_left(a,x, lo=0, hi=len(a)) :
查找在有序列表a中插入x的index。lo和hi用于指定列表的区间。默认是使用整个列表。
bisect.bisect_right(a,x, lo=0, hi=len(a))
bisect.bisect(a, x,lo=0, hi=len(a))
这2个和bisect_left差不多。但如果x已经存在。在其右边插入。
(2)插入
bisect.insort_left(a,x, lo=0, hi=len(a))
在有序列表a中插入x。如果x已经存在。在其左边插入。返回值为index。 和a.insert(bisect.bisect_left(a,x, lo, hi), x) 的效果相同。
bisect.insort_right(a,x, lo=0, hi=len(a))
bisect.insort(a, x,lo=0, hi=len(a))
和insort_left差不多。但如果x已经存在。在其右边插入。
可以函数可以分2类。bisect*。用于查找index。Insort*用于实际插入。默认重复时从右边插入。实际常用的估计是insort。
您还感兴趣的文章推荐
- 十大帅哥明星排行榜 全球颜值排名前十男2021
- 好用的睫毛膏十大排行榜10强 大家用过最好用的睫毛膏
- 最帅的人是谁 第一名 2020全球最帅100人完整排行榜
- 全球最帅的男人排行榜 盘点历届全球最性感男人今昔对比照
- 搞笑韩剧排行榜前十名 浪漫搞笑爱情喜剧韩剧
以上就是由互联网推广工程师 桔子生活网 整理编辑的,如果觉得有帮助欢迎收藏转发~
本文地址:https://www.wangchuang8.com/71004.html,转载请说明来源于:桔子生活网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系进行处理。分享目的仅供大家学习与参考,不代表本站立场。
评论(2)
python实现二分法查找 python二分法中搜索精度算法 这篇解答确实也是太好了
元素,英语,数组,列表,算法,函数,序数,过程,是一种,对数
在计算机科学中。二分搜索(英语:binary search)。也称折半搜索(英语:half-interval searc