二分查找问题

为什么二分查找最坏时间复杂度是O(n)... 为什么二分查找最坏时间复杂度是O(n) 展开
 我来答
听不清啊
高粉答主

2014-09-07 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部
长度为n的有序线性表,在最坏情况下,二分查找只需要比较log2n次。

一个有序线性表 可以看做在一个完全的二叉排序树
比如0 1 2 3 4 5 6 7 我们就可以看做这样一个树
4
2 6
1 3 5 7
0
二分查找在图论上的含义 正是在这样一个二叉树上查找某个节点
最多需要的比较次数也就是树的高度这么多
那么树高怎么算 就是log2(n)取整数 时间复杂度就是O(log2n)了
追问
可是我看书上说二分查找最坏时间复杂度是O(n)啊
追答
每一次查找失败,就会排除一半的数据,怎么会最坏时时间复杂度是O(n)呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式