0
我想了解打印BST鍵在給定範圍內的運行時間。 我試圖從this example瞭解它,但我不能。打印給定範圍內的BST鍵
我想我明白O(log n)
是從哪裏來的。這是從通過BST去遞歸,這將需要O(log n)
每邊,但我不知道:
凡
K
的來源。它只是持續打印時間嗎?如果是的話爲什麼運行時不是O(log n)
+O(k)
,而且你會忽略KO(n)
從哪裏開始遍歷呢?因爲它不在這個運行時。如果我們在樹的每一邊都有多個值,運行時將如何改變。例如,如果範圍是從4開始呢?
K是打印的項目數。無論你多快找到開始和結束,你都必須打印所有的項目。您需要打印的項目越多,需要的時間就越長。 – 2013-02-23 14:47:33
有用,當你有一個常數,你說'O(某個值)'+'O(C)',並忽略C因爲它漸近較小。爲什麼我們在這種情況下將這個添加到我們的'O(log)'中? – Quantico 2013-02-23 14:49:43
K不是一個常數。它根據輸入而變化。 – 2013-02-23 14:51:29