/* 定義datatype為char型別 */
typedef char datatypec;
/* 二叉樹的結點型別 */
typedef struct bitnode
bitnode,*bittree;
/* 初始化二叉樹,即把樹根指標置空 */
void bintreeinit(bittree bt);
/* 按先序次序建立乙個二叉樹*/
void bintreecreat(bittree bt);
/* 檢查二叉樹是否為空 */
int bintreeempty(bittree *bt);
/* 按任一種遍歷次序(包括按先序、中序、後序、按層次)輸出二叉樹中的所有結點 */
void createbitree1(bittree &bt);
/* 求二叉樹的深度 */
int bintreedepth(bittree bt);
/* 求二叉樹中所有結點數 */
int bintreecount(bittree bt);
/* 清除二叉樹,使之變為空樹 */
void bintreeclear(bittree bt);
void bintreeinit(bittree bt)
void bintreecreat(bittree bt)
}int bintreeempty(bittree *bt)
void createbitree1(bittree &bt)//先序建立二叉樹
}bittree bintreecreate()
while (s<'a' || s>'z');
r = (bittree)malloc(sizeof(bitnode));
r->data = s;
printf("");
do while (s != 'y'&&s != 'n');
if (s == 'y')
r->lchild = bintreecreate();
return r;
}int bintreedepth(bittree bt)//樹的深度
}int bintreecount(bittree bt)
void bintreeclear(bittree bt)
二叉樹基本操作
tree.h ifndef tree h define tree h include typedef int element 定義二叉樹 typedef struct nodetreenode void preorder treenode root 遞迴前序遍歷 void inorder treen...
二叉樹基本操作
一.二叉樹的定義 二.二叉樹的建立 定義一棵無資料的二叉樹 6 int left size 7 int right size 為了操作簡便,我們定義一棵不需要儲存資料的二叉樹,只要能儲存節點之間的邏輯關係就行,所以用兩個陣列來表示。left i 第i個節點的左子節點的序號 right i 第i個節點...
二叉樹基本操作
include include define maxsize 100 typedef char elemtype typedef struct node btnode void createbtnode btnode b,char str 由str串建立二叉鏈 j ch str j btnode f...