0
A
回答
2
最起碼,你可以做的兩個步驟:
提取從樹上使用中序遍歷排序後的數組。
構建一個近乎完美的二叉樹。例如,只需使用h = log n來加蓋高度,其中n是元素的數量。如果n不等於2 k -1對於某個整數k,則只會得到完美樹的一部分,但高度仍然是最小的。
以下是構建值1,2,3的樹,... 10的說明圖像:
8
4 10
2 6 9
1 3 5 7
可替換地,在步驟2中,可以把的中間元件數組作爲根,將剩餘的部分分成兩個大小相等的部分,並遞歸執行。舉例:
5
2 8
1 3 7 10
4 6 9
每個步驟都可以在線性時間內執行。
相關問題
- 1. 完美平衡二叉搜索樹
- 2. AVL樹完美平衡問題
- 3. R:完美平滑曲線
- 4. Gridview項目之間完美的線性間距
- 5. 完美的二叉樹:DSW和RB平衡樹
- 6. 完美平衡樹中元素的順序
- 7. 平衡不平衡/部分平衡BST的複雜性?
- 8. 何時平衡BST的最佳時間?
- 9. 線程數量和線程塊時間之間的平衡在哪裏?
- 10. 如何確定一個平衡或完美平衡的二叉搜索樹(僅從圖片)
- 11. 如何測試樹在線性時間內是否具有完美匹配?
- 12. 線程的工作平衡
- 13. Text ::平衡和多線xml
- 14. 平衡IIS壓縮與CPU時間?
- 15. 不平衡Elasticsearch性能
- 16. 二叉樹屬性 - 平衡
- 17. 彈性負載平衡
- 18. 插入元素的順序將導致完美平衡的二叉搜索樹?
- 19. 在Haskell中,如何生成一個完美平衡的二叉搜索樹?
- 20. 如何衡量scala線程池時間?
- 21. 完美數字性能
- 22. 完整集羣與負載平衡
- 23. 完美水平路徑的SVG漸變
- 24. 完美中心與Bootstrap水平對齊
- 25. 平衡線性方程的簡單方法?
- 26. 構建會計線索平衡報告的性能問題
- 27. 劃分線程之間的不平衡數
- 28. 平衡如何平衡B-樹
- 29. 旋轉線就像平衡板
- 30. API在線充值移動平衡