2016 - 2024

感恩一路有你

二分查找法例题 二分法比较次数?

浏览量:2953 时间:2021-03-17 19:13:46 作者:admin

二分法比较次数?

二进制搜索要求线性表的节点按键值排序并按顺序存储。搜索时,它首先与表中间节点的键值进行比较。如果相等,则搜索成功。否则,根据比较结果,确定下一步将在表的上半部分或下半部分继续。二进制搜索的效率更高。如果线性表有n个元素,则最大搜索次数是大于log2n的最小整数,最小搜索次数是1。二分法搜索也称为半搜索。二分法搜索的基本思想是让字典中的元素从小到大有序地存储在数组中。首先,将给定值键与字典中间元素的键代码进行比较。如果相等,则搜索成功;否则,如果键小,则在字典的前半部分继续二分法搜索;如果键大,则在字典的后半部分继续二分法搜索。这样,在比较之后,检索间隔将缩短一半,并且该过程将继续,直到检索成功或失败。二进制搜索是一种高效的搜索方法,它要求字典按顺序表中的键进行排序

要对包含n个元素的有序数组进行二进制搜索。要分析的比较数可以通过绘制二叉决策树来分析。二叉决策树的高度为[log2(n)]1级,这是二叉搜索的最大比较次数。例如,如果n=1000,则最大比较次数为[log2(1000)]1=9,1=10。如果要计算平均比较次数,则需要分析二叉决策树中的每个节点。第一级比较一次,第二级比较两次,第三级比较三次,以此类推,将每个节点的比较次数相加,然后节点数(元素数)就是平均比较次数。这里,假设搜索是在等概率条件下进行的。例如:有一个由九个元素组成的有序数组,每个元素用1,2,3。。。8, 9. 然后二叉决策树如下:如图所示,如果要查找的元素位于第五个位置,则只需进行一次比较即可找到它。如果找到第九个元素,就需要四个比较。该算法分别比较第五、第七、第八和第九个元素。因此,平均比较次数如下:你能理解这个分析吗?希望能对你有所帮助。

二分查找法例题 二分查找算法举例说明 二分查找法过程详解

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。