前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >二分查找算法的实现(Python)

二分查找算法的实现(Python)

作者头像
鸩书n1
发布2022-11-18 17:16:04
2310
发布2022-11-18 17:16:04
举报
文章被收录于专栏:同步同步

目录

二分查找是什么?

二分查找和普通查找的速度有什么区别?

如何实现二分查找?


二分查找是什么?

假设你在玩一个猜数游戏,我会告诉你大了,正确,小了且范围为1~100。用普通方法(一个一个猜)最多需要猜100次,而二分查找却快得多。那么什么是二分查找呢?

二分查找是一种算法,输入必须为有序的元素列表。我先猜了50,小了,那么我就排除了一半,这就是二分查找!接下来可以重复二分查找直到找到正确值。

二分查找和普通查找的速度有什么区别?

普通查找的速度为n(n为需要执行的操作数)

二分查找的速度为log n

如何实现二分查找?

代码语言:javascript
复制
def binary_search(list,item):
    low=0
    hight=len(list-1)#用于跟踪要查找的部分
while low<=hight:#只要范围没有缩小到只包含一个元素
    mid=(low+high)/2#就检查中间元素
    guess=list[mid]
    if guess==item:#找到了
    return mid
    if guess>item:
    hight=mid-1
    else:
    low=mid+1
return none

算法就是这样,但是测试用的list和item需要读者自己编写。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-10-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 二分查找是什么?
  • 二分查找和普通查找的速度有什么区别?
  • 如何实现二分查找?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档