O(log n) 怎么算出来的

从16个数字中找到13

第1次找到8个 16*(1/2)

第2次找到4个 8*(1/2)

第3次找到2个 4*(1/2)

第4次找到1个 2*(1/2)

16个元素中找到一个


16个元素中找到一个元素

16 * (1/2)^4 = 1

类推到n个元素
n * (1/2)^k = 1

n * (1/2^k) = 1

n = 2^k

log_2(n) = k

需要O(log(n))次的结果


你可能感兴趣的:(O(log n) 怎么算出来的)