二叉樹的建立和遍歷

2022-08-11 11:12:08 字數 819 閱讀 1935

二叉樹是十分重要的資料結構,主要用來存放資料,並且方便查詢等操作,在很多地方有廣泛的應用。

今天主要寫的最基本的二叉樹,後續會繼續寫線索二叉樹,二叉排序樹,平衡二叉樹等。

二叉樹的建立思路仍然是採用的遞迴的思想,給定乙個指向根節點的指標,然後遞迴呼叫ceate()函式,自動生成乙個二叉樹。就像是在地上挖了個坑(根節點),然後他會拿著斧子(create函式)自己挖一顆很大的洞穴(二叉樹)出來。當然挖坑前需要先定義每個洞長什麼樣(定義節點結構)。

1 #include2 using namespace std;

3 4 typedef struct node

5 bitreenode, *bitree;      //這裡的*bitree意思是給 struct node*起了個別名,叫bitree,所以bitree為指向節點的指標,

並且可以作為指向二叉樹根節點的指標(用以指示二叉樹)。

11 12 void createbitree(bitree &t) //這裡加上&意思是傳遞的引數為指標的引用,括號裡面等價於 bitreenode* &t

13 25 }

26 27 //前序遍歷二叉樹並列印出來

28 void preorder(bitree t)

29 36 }

37 //中序遍歷二叉樹並列印出來

38 void midorder(bitree t)

39 46 }

47 //後續遍歷二叉樹並列印出來

48 void postorder(bitree t)

49 56 }

57 int main()

58

二叉樹建立和遍歷

二叉樹建立遍歷規則 1.先序 根 左 右 2.中序 左 根 右 3.後序 左 右 根 二叉樹定義和輔助函式如下 struct node void visit int data int indata 先序建立二叉樹 struct node createbitree 先序建立乙個二叉樹 return t...

二叉樹建立和遍歷

include include 帶返回值建立二叉樹 最簡單方法 節點資料結構 struct bs node typedef struct bs node tree tree head,p,root 建立二元查詢樹 有返回值的可以不傳參 沒有的話如何傳參 輸入0代表到了某個葉子節點 tree crea...

二叉樹建立和遍歷

二叉樹建立遍歷規則 1.先序 根 左 右 2.中序 左 根 右 3.後序 左 右 根 二叉樹定義和輔助函式例如以下 struct node void visit int data int indata 先序建立二叉樹 struct node createbitree 先序建立乙個二叉樹 return...