C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

建立一棵含有n個結點的二叉樹,採用二叉鏈表存儲;

輸出前序、中序、後序、、層序遍歷該二叉樹的遍歷結果。

定義二叉樹的數據類型——二叉樹結點結構體BiNode。建立二叉鏈表可以採用擴展二叉樹的一個遍歷序列,例如前序序列,將擴展二叉樹的前序序列由鍵盤輸入,建立該二叉樹的二叉鏈表存儲。

簡單起見,本實驗假定二叉樹的數據元素為char型

用模板類改寫

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

創建一個拓展二叉樹,我們用#來代指虛結點:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

前序遍歷的實現:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

中序遍歷的實現:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

後序遍歷的實現:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

層序遍歷的實現:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

程序主函數部分代碼:

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷

結果:

該二叉樹的根節點是:a

該二叉樹的前序遍歷是:a b d e c f

該二叉樹的中序遍歷是:d b e a c f

該二叉樹的後序遍歷是:d b e c f a

該二叉樹的層序遍歷是:a b c d e f

本文就到這裡,希望此案例的展示對你有幫助!

想要在程序員生涯內有更高的成就的話,C/C++就是一個既可以強化思維能力,又可以打好編程基礎的編程語言,你想要做軟件開發,成為核心程序員的話,學習C/C++的話筆者有一個C/C++的編程千人群(Q艘索:C語言編程學習聚集地(無言建立))你如果感覺自學C/C++語言有困難的話,有興趣學習或者瞭解一下C/C++編程的小夥伴就可以進來交流。

C/C++編程筆記:數據結構二叉樹查找前序、中序、後序、層序遍歷


分享到:


相關文章: