設計和編寫程式,按照輸入的遍歷要求(即先序、中序和後序)完成對二叉樹的遍歷,並輸出相應遍歷條件下的樹結點序列。
1//遞迴實現
2 #include3 #include
4using
namespace
std;
56 typedef struct
bitnodebitnode,*bitree;
1011
void initbitree(bitree &t)//
構造空二叉樹
1215
void createbitree(bitree &t)//
生成二叉樹
1629 t->data=ch;
30 createbitree(t->lchild);
31 createbitree(t->rchild);32}
33}3435
void preorder(bitree t)//
先序遞迴遍歷
3643}44
45void inorder(bitree t)//
中序遞迴遍歷
4653}54
55void postorder(bitree t)//
後序遞迴遍歷
5663}64
intmain()
6578
else
if(str=="中序"
)7983else
if(str=="後序"
)8488 cout<89 system("
pause");
90return0;
91 }
資料結構之二叉樹
在二叉樹中每個節點最多只能有兩個子節點。即左子節點和有子節點。在二叉樹中最重要的操作應當是遍歷。即按照某一順序訪問二叉樹中的每乙個節點。一般有如下幾種遍歷方法 1 前序遍歷,即先訪問根幾點,然後再訪問左子節點,最後訪問右子節點。2 中序遍歷,即先訪問左子節點,然後再訪問根節點,最後訪問右子節點。3 ...
資料結構之二叉樹
定義 滿足以下條件的就是樹 1.有且僅有乙個特定的稱為根root的結點。2.當n 1時,其餘結點可分為m m 0 個互不相交的有限集,其中每個集合本身又是乙個棵樹,並稱為根的子樹。樹是資料結構中一種常見的資料結構,比如我們排序中常見的二叉樹,紅黑樹等。最常見的是樹形表示法和廣義表表示法。樹的結構示意...
資料結構之二叉樹
來看一下樹的結構 class treenode public treenode string value 首先,為了方便後面看到效果,先手動初始化乙個有4個節點的二叉樹 tree tree new tree treenode root new treenode root treenode node1...