/*
* all right reserved.
* 檔名稱:main.cpp
* 完成日期:2023年11月9日
* 版本號:v1.0
*
* 問題描述:二叉樹演算法驗證
* 輸入描述:標準函式輸入
* 程式輸出:標準函式輸出
*/
#ifndef btree_h_included
#define btree_h_included
#define maxsize 100
typedef char elemtype;
typedef struct node
btnode;
void createbtnode(btnode *&b,char *str); //由str串建立二叉鏈
btnode *findnode(btnode *b,elemtype x); //返回data域為x的節點指標
btnode *lchildnode(btnode *p); //返回*p節點的左孩子節點指標
btnode *rchildnode(btnode *p); //返回*p節點的右孩子節點指標
int btnodedepth(btnode *b); //求二叉樹b的深度
void dispbtnode(btnode *b); //以括號表示法輸出二叉樹
void destroybtnode(btnode *&b); //銷毀二叉樹
#endif // btree_h_included
#include #include #include "btree.h"
void createbtnode(btnode *&b,char *str) //由str串建立二叉鏈
} }
j++;
ch=str[j];
} } btnode *findnode(btnode *b,elemtype x) //返回data域為x的節點指標
} btnode *lchildnode(btnode *p) //返回*p節點的左孩子節點指標
btnode *rchildnode(btnode *p) //返回*p節點的右孩子節點指標
int btnodedepth(btnode *b) //求二叉樹b的深度
} void dispbtnode(btnode *b) //以括號表示法輸出二叉樹
} } void destroybtnode(btnode *&b) //銷毀二叉樹
}
#include #include "btree.h"
void levelorder(btnode *b)
if (p->rchild!=null) //有右孩子時將其進隊
第十周 專案1 二叉樹演算法驗證
1 層次遍歷演算法的驗證 include include btree.h void levelorder btnode b if p rchild null 有右孩子時將其進隊 int main 2 二叉樹構造演算法的驗證 include include include btree.h btnode...
第十周專案1 二叉樹演算法驗證(2)
all rights reservrd.檔名稱 test.cpp 版本號 v1.0 問題描述 二叉樹構造演算法的驗證 問題及 利用btreee.h見 演算法庫 1.由先序序列和中序序列構造二叉樹 include include include btree.h btnode createbt1 cha...
第十周專案1 二叉樹演算法驗證(3)
all rights reservrd.檔名稱 test.cpp 版本號 v1.0 問題描述 中序線索化二叉樹的演算法驗證 問題及 利用btreee.h見 演算法庫 include include define maxsize 100 typedef char elemtype typedef st...