二分查找的平均查找长度是多少?

如题所述

二分查找方法从长度为10的有序表中查找一个元素时,平均查找长度为4。

二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。

二分查找的时间复杂度是O(2为底的log(n)),也就是说它的平均查找长度只和该有序表的长度有关,当长度为10时,平均查找长度为log10(2为底),其>3,<4,所以平均查找长度为4次。

扩展资料:

二分查找的查找过程:

首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。

重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。

参考资料来源:百度百科-二分查找

温馨提示:内容为网友见解,仅供参考
无其他回答

二分查找的平均查找长度是多少?
以二分查找方法从长度为10的有序表中查找一个元素时,平均查找长度为4。二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。二分查找的时间复杂度是O(2为底的log(n)),也就是说它的平均查找长度...

二分查找的平均查找长度
平均查找长度=1\/12*(1*1+2*2+3*4+4*5)=37\/12。关于有序线性表是说线性表中的元素是按照升序或降序(允许相邻元素相同)的方式排列的。线性表是一种基本的计算机内的存储工具。顺序查找的基本思想是:从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查到所...

...查找失败和成功时的asl(平均查找长度)是多少啊?
设内部结点的总数为n=2h-1,则判定树是深度为h=lg(n+1)的满二叉树(深度h不计外部结点)。树中第k层上的结点个数为2k-1,查找它们所需的比较次数是k。因此在等概率假设下,二分查找成功时的平均查找长度为:ASLbn≈lg(n+1)-1 二分查找在查找失败时所需比较的关键字个数不超过判定树的深度...

【数据结构】请教一道题,关于二分查找(折半查找)的平均搜索长度。
所以平均长度是 (3+2+3...+3+4) \/ 9 答案是: C

平均查找长度的计算方法
顺序查找,从表的一端开始,顺序扫描线性表,依次将扫描到的节点关键字和给定值k相比较。等概率条件下...平均查找长度:ASL = (n+...+2+1)\/n= (n+1)\/2。二分法查找,前提是线性表是有序表。假设数据是按升序排序的,对于给定值x,从序列的中间位置开始比较,如果当前位置值等于x,则查找成...

二分查找法平均查找长度是多少?
,然后跳出查找的循环语句。所以一共比较了n+1次。平均查找长度公式是概率乘比较次数的求和。假设每个元素查找概率为1\/n,而失败时每个元素都相当于比较n+1次,即查找失败时每个元素的查找长度一样,都是(n+1)\/n。不算哨兵元素,一共有n个元素进行了查找,故ASL=n*(n+1\/n)=n+1 ...

...方法从长度为7的有序表中查找一个元素时,平均查找长度为多少...
平均查找长度:(1+ 2*2 + 3*4 )\/ 7 = 17\/7 画一个二叉树 0 \/ \\ 0 0 \/ \\ \/ \\ 0 0 0 0 二分查找,第一层需要比较1次,第二层2个,比较2次,第3层4个比较3次。

「考前避坑」这几个ASL的坑不要再跳了!
考点1:顺序查找、二分查找、分块查找的ASL 在有序单链表中查找任一元素,平均查找长度为(n+1)\/2,无论表是否有序。具有12个关键字的有序表,折半查找成功平均查找长度为37\/12,失败为49\/13。通过折半查找判定树计算得出。分块查找成功平均查找长度计算公式为(s2+2s+n)\/2s,s为每块元素数,n...

c语言二分查找平均搜索路径长是什么意思 懂的大哥举个例子?
平均搜索路径长,是指对每一个元素的搜索长度求平均值,而每一个元素的搜索长度是一个确定的值。所以,对于在012345中查找2来说,每一次找到的是2,查找长度就是1。

使用二分搜索法花费的猜测次数比使用线性搜索法少吗
平均查找长度:(1+ 2*2 + 3*4 )\/ 7 = 17\/7 画一个二叉树 0 \/ \\ 0 0 \/ \\ \/ \\ 0 0 0 0 二分查找,第一层需要比较1次,第二层2个,比较2次,第3层4个比较3次。

相似回答
大家正在搜