關於二叉樹的建立和遍歷 ,為什麼輸入之後不輸出啊

時間 2023-03-22 00:20:02

1樓:匿名使用者

有兩個錯誤:1.當讀入的是空格時,t賦值為空不錯,但此時應該返回,而不應該進入下一個判斷的else分句,樓主的**就是進入了if(ch=='#') exit(0);的else分句。

2.可以看到主函式中對createbitree的呼叫需要用一個指標承接返回值,所以根據遞迴呼叫的形式不變,在createbitree中呼叫自身的時候也要承接返回值。根據樓主的**修改如下:

#include

#include

#include

typedef struct bitnodebitnode,*bitree;

bitree creatbitree(bitree t) /先序建立二叉樹。

return t;

void bitreetra(bitree t) /先序遍歷二叉樹。

void main()

2樓:匿名使用者

#include

#include

#include

typedef struct bitnodebitnode,*bitree;

void creatbitree(bitree &t) /先序建立二叉樹。

void bitreetra(bitree t) /先序遍歷二叉樹。

void main()

//放在。cpp檔案下,就可以執行。

二叉樹遍歷問題?

自學到二叉樹的時候,有一段關於遍歷二叉樹的**看不懂.....

二叉樹的遍歷問題

3樓:可樂墮天貓

前序是先中間後左右。

所以a是根節點 用a將右邊的中序序列分成兩個部分 左邊是左子樹 右邊是右子樹。

根據這種方式就可以推出樹的形狀 進而寫出後序序列樹的形狀是。

ab cd e fg h

二叉樹的遍歷是怎麼回事

4樓:網友

就是把二叉樹的所有節點都訪問一遍,有前序,中序,後序等遍歷方法,具體的一兩句也說不清楚,自己搜一搜吧。

5樓:夜巴黎

對一棵樹的遍歷就是對樹的查詢順序,

二叉樹的遍歷問題,二叉樹的遍歷問題?

程式vs2003成功編譯執行 include stdafx.h include using namespace std typedef struct tree bintree 二叉樹的建立 bintree create char str,intpose,intsize return t void p...

資料結構二叉樹的遍歷,C語言資料結構 二叉樹的遍歷

前序 根,左兒子,右兒子 中序 左兒子,根,右兒子 後序 左兒子,右兒子,根 首先是要牢記一上幾句話 比如這棵樹的中許遍歷,a有左兒子,先不訪問a,以此類推,直到d沒有左兒子,訪問d,然後訪問d的根b,然後應該訪問b的右兒子,但是b沒有,所以訪問b的根a,訪問完a以後訪問a的右子樹。先看c,c有左兒...

設有如下圖所示的二叉樹,對此二叉樹前序遍歷的結果為()

b,前序就是先看根節點,再看左子樹,再看右子樹 b你可以加我賬戶名,我是學計算機的。設一棵二叉樹的中序遍歷結果為dbeafc,前序遍歷的結果為abdecf,則後序遍歷結果為 依據前序抄 遍歷序列可確定襲根結點為a 再依據中序遍歷序列可知其左子樹由dbe構成,右子樹為fc 又由左子樹的前序遍歷序列可知...