在跑程式構造一棵二叉樹時,我們經常使用先序構造的方式。先建立乙個結點賦值,然後再遞迴的構造它的左右子樹。
例如我們約定好以' # '結束輸入,構造下面形狀的一棵二叉樹:
/*------------
樹的形狀:
ab c
d e f
--------------*/
我們以先序的方式輸入這棵樹:a b d # # e # # c f # # #,最後以層次的方式展示出來。
**如下:
#include#includeusing namespace std;
//樹結構定義
typedef struct nodetreenode,*tree;
//先序構造二叉樹
void createtree(tree& t)
} //層次遍歷輸出二叉樹
void levelorder(tree& t)
cout執行結果:
資料結構 線索二叉樹 先序
4.4 尋找先序後繼 4.5 先序遍歷 4.6 main函式 4.7 測試 5.小結 include include define elemtype char 線索二叉樹結點型別定義 typedef struct threadnode threadnode,threadtree 函式宣告 void ...
C 資料結構 二叉樹(一) 先序建立二叉樹
定義 二叉樹是n個節點的有限集合,該集合或者為空集 稱為空二叉樹 或者由乙個根節點和兩棵互不相交的的二叉樹組成,這兩棵二叉樹分別稱為根節點的左子樹和右子樹。本次二叉樹知識體系的總結秉承的思想是 我們希望 二叉樹類bitree,它的私有成員能體現二叉樹本身的性質,它的公有成員能提供給使用者一系列對二叉...
資料結構實驗之二叉樹四 (先序中序)還原二叉樹
time limit 1000ms memory limit 65536kb submit statistic problem description 給定一棵二叉樹的先序遍歷序列和中序遍歷序列,要求計算該二叉樹的高度。input 輸入資料有多組,每組資料第一行輸入1個正整數n 1 n 50 為樹中...