O(Log N)到底是什么意思?我目前正在学习大O符号运行时间和摊销时间。我理解O(N)线性时间,这意味着输入的大小成比例地影响算法的增长.同样的情况也是如此,例如,二次时间O(N)2)等.甚至算法,如置换生成器,与O(n!)时间的增长是因式分解的。例如,以下函数是O(N)因为该算法与其输入量成比例增长。n:f(int n) {
int i;
for (i = 0; i < n; ++i)
printf("%d", i);
}类似地,如果存在嵌套循环,则时间为O(N)2).但究竟什么是O(原木n)?例如,说一个完整二叉树的高度是什么意思?O(原木n)?我确实知道(也许不是很详细)什么是对数,从这个意义上说:日志。10100=2,但我不知道如何识别具有对数时间的函数。
3 回答
噜噜哒
TA贡献1784条经验 获得超7个赞
O(log N)
n
1
10
2
100
3
1000
O(log n)
O(N)
N O(log N)
添加回答
举报
0/150
提交
取消