在筆試面試的過程中,二叉樹也是難點之一,考的也是比較多的。我也是被這個問題給難倒過,不能在乙個地方摔兩次啊!雖然這個東西第一次寫出來了,可是如果長時間不看不寫不用,還是很容易忘記的。溫故而知新,老子還是很厲害的啊,要謹記老子的話了。廢話不多說,直接上**吧!還是一樣在vc6.0上除錯過的。
#include #include #include using namespace std;
typedef struct bt
bt;void creatbt(bt *l,string str,int r) //建立二叉樹
else
if (str[r*2+2]=='#'||r*2+2>str.size()-1)
else }
void preorder(bt *root)//先序遍歷二叉樹
if (root->rch !=null) }
void inorder(bt *root)//中序遍歷二叉樹
} else }
void postorder(bt *root)//後序遍歷二叉樹
if (root->rch != null)
cout}int main()
{ bt *l = new bt;
string str;
cin>>str;
creatbt(l,str,0);
cout<<"先序遍歷二叉樹:";
preorder(l);
cout<
二叉樹建立以及遍歷
題目描述 編乙個程式,讀入使用者輸入的一串先序遍歷字串,根據此字串建立乙個二叉樹 以指標方式儲存 例如如下的先序遍歷字串 abc de g f 其中 表示的是空格,空格字元代表空樹。建立起此二叉樹以後,再對二叉樹進行中序遍歷,輸出遍歷結果。輸入描述 輸入包括1行字串,長度不超過100。輸出描述 可能...
二叉樹建立 遍歷(C )
二叉樹的建立 前序遍歷 中序遍歷 後序遍歷 層序遍歷總結如下 c 以下面這棵二叉樹為例 定義乙個常量 using namespace std typedef struct binode 定義二叉鍊錶的結點結構 binode,bitree 等同於binode binode,bitree bitree ...
二叉樹的建立以及遍歷C C
一 二叉樹的定義 二叉樹 binary tree 是個有限元素的集合,該集合或者為空,或者由乙個稱為根 root 的元素及兩個不相交的 分別被稱為左子樹和右子樹的二叉樹組成。當集合為空時,稱該二叉樹為空二叉樹,在二叉樹中,乙個元素也成為乙個節點。二 二叉樹的資料結構 下面為二叉樹鏈式儲存結構的定義 ...