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
提交
取消