0
假設我們有一個平衡二叉搜索樹T,它包含n個數字。我們給出兩個 數字L和H,並希望總結T中位於L和H之間的所有數字。假設 T.中有m個這樣的數字。有人可以解釋如何計算所花時間的絕對值計算總和..?花時間總結二叉搜索樹中位於兩個數字之間的所有數字
假設我們有一個平衡二叉搜索樹T,它包含n個數字。我們給出兩個 數字L和H,並希望總結T中位於L和H之間的所有數字。假設 T.中有m個這樣的數字。有人可以解釋如何計算所花時間的絕對值計算總和..?花時間總結二叉搜索樹中位於兩個數字之間的所有數字
我會留給你弄清楚全部細節,但這裏有一個開始。該算法將執行:
L
的最小數字。你可以在日誌時間內做到這一點。H
的數字時停止。我認爲「之間的謊言」的意思是「嚴格間」,但你可能要在步驟1和3
感謝弱的不平等,很好地解釋。並且「介於」意味着包括L和H.但是我有一個疑問,那就是我們考慮了搜索L所需的時間(即日誌時間),但我們不需要搜索H.爲什麼這樣呢?> – 2014-09-26 17:16:02
因爲當你走樹時,你會發現'H'(或者第一個大於'H')。你需要知道從哪裏開始步行,但之後,你只需依次處理元素,直到你到達另一端。你也可以從另一個方向做到這一點:找到'H',然後向後走,直到找到小於'L'的東西。 – 2014-09-26 17:24:09