2013-07-14 46 views
0

當記者問到創建給定序遍歷一個BST,也有這樣的答案給出:http://www.geeksforgeeks.org/construct-bst-from-given-preorder-traversa/出了什麼問題我對前序遍歷的想法

這需要大量的代碼。

我的問題是,爲什麼我不能插入空樹來給我正確的答案?有沒有簡單插入會導致錯誤答案的例子?例如,在該鏈接中給出的示例中,我們有{10,5,1,7,40,50}作爲前序遍歷。但是,不僅僅是按照前序列表的順序使用常規的BST插入方法6次給出適當的樹?我能否請我拿一個反例和/或解釋爲什麼我不正確?我一直無法提出一個反例。

回答

6

只要調用insert正確的次數應該會產生正確的樹 - 但它會花費O(n log n)的複雜度,其中它可以用O(N)複雜度完成。

誠實地說,除非您使用大量數據,否則這種差異對您而言可能並不重要。