任何人都可以提出一種算法來從根開始逐級遍歷二叉樹級別嗎?從根開始遍歷二叉樹級別的算法
2
A
回答
5
這是由breadth-first搜索做好了你的樹:
- 創建樹節點
- 排隊樹根的隊列
- 雖然隊列不爲空,重複如下:
- 出隊節點並打印其內容
- 排隊當前節點的左側子節點
- 排隊右側當前節點
當您按照這種算法的子節點,從K
級的所有節點將被打印之前從K+1
水平第一節點打印,所以該樹將被打印水平逐級。
1
您可以使用隊列執行這種遍歷。從根節點將它的子節點推到隊列的末尾,然後當隊列不空時,從隊列的頂部彈出一個項目並將其子節點添加到隊列的末尾。適當時處理每個節點。
這實質上是一個Breadth First Traversal。
相關問題
- 1. 二叉樹級別遍歷
- 2. 二叉樹級別遍歷
- 3. 二叉樹遍歷
- 4. 二叉樹遍歷
- 5. 遍歷二叉樹
- 6. 遍歷二叉樹
- 7. 使用堆棧的二叉搜索樹的樹遍歷算法
- 8. 二叉樹級別的順序使用隊列遍歷?
- 9. C中的二叉樹:遍歷指定級別
- 10. 二叉樹遍歷抽象
- 11. 二叉搜索樹遍歷
- 12. 遍歷二叉搜索樹
- 13. 爲了遍歷二叉樹
- 14. 二叉搜索樹遍歷
- 15. 遍歷非二叉樹
- 16. 遍歷二叉搜索樹
- 17. Javascript:遍歷二叉樹?
- 18. SQL二叉樹遍歷
- 19. 遞歸遍歷二叉樹
- 20. 使用級別順序遍歷將節點插入二叉樹
- 21. 在樹中遍歷二叉樹C
- 22. 方法,根據前序遍歷返回二叉樹
- 23. 基於矢量的二叉樹遍歷
- 24. 二叉樹遍歷的時間效率
- 25. 爲了遍歷修改的二叉樹
- 26. 遍歷一個無序的二叉樹
- 27. 顯示二叉樹的遍歷
- 28. 遍歷一個溢出的二叉樹
- 29. 二叉樹的遍歷C++中
- 30. 遍歷C中的二叉樹C
只是想我會補充一點,這顯然推廣到k-ary有序以及一般和因此無序的樹。 – 2013-04-24 00:27:56