一共有n个元素,要找到其中的一个。使用二分查找
第一次没命中
第二次从n/2个元素中查找
第三次从n/4个元素中查找
第四次从n/8个元素中查找
第k次从n/2^(k-1)个元素中查找
n/2^(k-1)会越来越小
当n/2^(k-1)=1的时候,查找结束
k = 1 + log2(n)
n很大的时候1就无所谓了,近似为0
所以二分查找的时间复杂度为lgN
2023-12-23 10:35:16
一共有n个元素,要找到其中的一个。使用二分查找
第一次没命中
第二次从n/2个元素中查找
第三次从n/4个元素中查找
第四次从n/8个元素中查找
第k次从n/2^(k-1)个元素中查找
n/2^(k-1)会越来越小
当n/2^(k-1)=1的时候,查找结束
k = 1 + log2(n)
n很大的时候1就无所谓了,近似为0
所以二分查找的时间复杂度为lgN