**:
#include #include #define maxsize 100
typedef char elemtype;
typedef struct node
tbtnode;
void createtbtnode(tbtnode * &b,char *str)
} }
j++;
ch=str[j];
} }
void disptbtnode(tbtnode *b)
} }
tbtnode *pre; //全域性變數
void thread(tbtnode *&p)
else p->ltag=0;
if (pre->rchild==null) //後繼線索
else pre->rtag=0;
pre=p;
thread(p->rchild); //右子樹線索化
} }
tbtnode *creathread(tbtnode *b) //中序線索化二叉樹
return root;
}
void thinorder(tbtnode *tb)
p=p->rchild;
} }
int main()
執行結果:
知識點總結:
學習心得:
線索化二叉樹有效利用了空的結點空間,分清0和1tag表示的不同含義以及左節點指向前驅節點,右節點指向後繼節點。
第11周專案1 (3)中序線索化二叉樹的演算法驗證
問題描述及 煙台大學計算機與控制工程學院 作 者 馬賽 完成日期 2016年11月10日 問題描述 將二叉樹線索化表示出來 include include define maxsize 100 typedef char elemtype typedef struct node tbtnode voi...
第十周專案1(3) 中序線索化二叉樹的演算法驗證
問題及 檔名稱 xxy.作 者 徐瀟雨 完成日期 2017 年 11 月 2 日 版 本 號 v1.0 問題描述 用空指標域按遍歷順序指向節點的前驅或後繼 輸入描述 無 程式輸出 線索化後的二叉樹 include include define maxsize 100 typedef char ele...
第13周專案3二叉排序樹
主函式 include include typedef int keytype typedef char infotype 10 typedef struct node 記錄型別 bstnode 在p所指向的二叉排序樹中,插入值為k的節點 int insertbst bstnode p,keytyp...