在一组已经排序好的数据中确定某一个数据个位置,最佳算法是

1个回答
展开全部
摘要 1)另left=开头的位置,right=结束的位置
(2)取一个中间的位置mid
(3)如果当前位置的数等于k,则k的位置找到了
(4)如果中间的位置数大,表示k在前半部分,另right=mid-1,继续重复(2)查找.
(5)如果中间的位置数小,表示k在后半部分,另left=mid+1,继续重复(2)查找.
当然,这中间要是left>right了,就表示不存在这个数了
时间复杂度O(logn),没有多次查找等特殊要求的话,应该是最快的了。
咨询记录 · 回答于2022-04-18
在一组已经排序好的数据中确定某一个数据个位置,最佳算法是
您好,您的问题我已经看到了,正在整理答案,请稍等一会儿哦~
在一组已经排序好的数据中确定某一个数据个位置,最佳算法是
1)另left=开头的位置,right=结束的位置(2)取一个中间的位置mid(3)如果当前位置的数等于k,则k的位置找到了(4)如果中间的位置数大,表示k在前半部分,另right=mid-1,继续重复(2)查找.(5)如果中间的位置数小,表示k在后半部分,另left=mid+1,继续重复(2)查找.当然,这中间要是left>right了,就表示不存在这个数了时间复杂度O(logn),没有多次查找等特殊要求的话,应该是最快的了。
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

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

说明

0/200

提交
取消