问题 单项选择题

在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是

A.O(n)

B.O(n2)

C.O(log2n)

D.O(nlog2n)

答案

参考答案:C

解析:二分查找法也称为折半查找法。它的基本思想是:将n个元素分成个数大致相同的两半,取a[n/2]与欲查找的x作比较,如果x=a[n/2],则找到x,算法终止;如果xa[n/2],则只要在数组a的右半部继续搜索x。每次余下n/(2^i)个元素待比较。当最后剩下一个时,即n/(2^i)=1。故,n=2^i;所以i=log2n。

填空题
单项选择题 B1型题