方法二:根據所給的字串序列建立
其他方法
#
define
elemtype
char
typedef
struct
bintreenode
bintreenode;
typedef
struct
bintree
;
void
initbintree
(bintree *bt, elemtype ref)
//1按照先序次序輸入二叉樹中結點的值,構造二叉鍊錶表示的二叉樹bt
void
createbintree_1
(bintree *bt)
void
createbintree_1
(bintree *bt, bintreenode *
*t)else
}//呼叫
插入a
插入b
插入c
插入d
注意引數char *&str,對字元採用引用
void
createbintree_4
(bintree *bt,
char
*str)
void
createbintree_4
(bintree *bt, bintreenode *
&t,char
*&str)
else
}void
main()
對字串指標傳遞的分析
實際上str1與str2引數之間應該傳遞的是指向字串位址的位址
遞迴根的左右孩子
int
size
(bintree *bt)
intsize
(bintreenode *t)
}
int
height
(bintree *bt)
intheight
(bintreenode *t)
}
bool bintreeempty
(bintree *bt)
bintreenode*
leftchild
(bintreenode *p)
bintreenode*
rightchild
(bintreenode *p)
bintreenode*
parent
(bintree *bt, bintreenode *p)
bintreenode*
parent
(bintreenode *t, bintreenode *p)
else
return
parent
(t->rightchild,p);}
}
bintreenode*
search
(bintree *bt, elemtype key)
bintreenode*
search
(bintreenode *t, elemtype key)
else
}
void
copy
(bintree *bt1, bintree *bt2)
void
copy
(bintreenode *
&t1, bintreenode *t2)
}
void
bintreeclear
(bintree *bt)
void
bintreeclear
(bintreenode *
&t)}
二叉樹(二叉鍊錶實現)
二叉鍊錶結構的二叉樹模型,棧用自己寫的模版,佇列就不了 直接用stl的,不然 太長了 檔案 tree.h include include includeusing namespace std templateclass my stack templateclass node 結點類 node t d...
二叉鍊錶實現二叉樹
二叉樹的遍歷 前序遍歷,中序遍歷,後序遍歷,層序遍歷 二叉鍊錶的儲存實現 1 定義結構體,儲存二叉樹的結點資料,該結點的左兒子,右兒子。2 每乙個函式都要有乙個對應的私有成員 includeusing namespace std templatestruct binode templateclass...
二叉樹 二叉鍊錶
include using namespace std typedef char elemtype int n 0 typedef struct binode binode class bitree bitree binode getroot void preorder binode root 前序...