平均次数是(n+1)/2,不是n/2。
被查找的数是第1个数,则需用第1个数和被查找的数比较,要比较1次。
被查找的数是第2个数,则需用第1个数、第2个数和被查找的数比较,要比较2次。
...
被查找的数是第n个数,则需用第1个数、第2个数、...、第n个数和被查找的数比较,要比较n次。
平均次数为(1+2+...+n)/n=(n+1)/2。
被查找的数是第1个数,则需用第1个数和被查找的数比较,要比较1次。
被查找的数是第2个数,则需用第1个数、第2个数和被查找的数比较,要比较2次。
...
被查找的数是第n个数,则需用第1个数、第2个数、...、第n个数和被查找的数比较,要比较n次。
平均次数为(1+2+...+n)/n=(n+1)/2。
本文详细解析了二分查找算法的平均时间复杂度计算方法。通过对比查找过程中的不同情况,推导出了平均比较次数为(n+1)/2的结论。
2676

被折叠的 条评论
为什么被折叠?



