1using
system;
2using
system.collections.generic;
3using
system.linq;
4using
system.text;
5using
system.threading.tasks;67
namespace
binarytree818
19//
mytree.preordertree(mytree);
20//
mytree.inordertree(mytree);
21mytree.postordertree(mytree);22}
2324
//定義二叉樹
25public
class treewhere t : icomparable26
38set
3942}43
44public treelefttree
4550
set5154}
5556
public treerighttree
5762
set6366}
6768
//建構函式,定義二叉樹根節點
69public
tree(t data)
7075
76///
77///
向二叉樹中插入乙個新的結點
78///
小於根節點插入左子樹
79///
大於根節點插入右子樹
80///
81public
void
insert(t data)
8290
else
9194}95
else
96101
else
102105
}106
}107
108///
109///
前序遍歷:中左右
110///
111public
void preordertree(treeroot)
112119
}120
121///
122///
中序遍歷:左中右
123///
124public
void inordertree(treeroot)
125132
}133
134///
135///
後序遍歷:左右中
136///
137public
void postordertree(treeroot)
138145
}146
147///
148///
逐層遍歷:
149///
1. 從根節點開始,訪問乙個節點然後將其左右子樹的根節點一次放入鍊錶,然後刪除該根節點。
150///
2. 依次遍歷鍊錶中的元素,直到鍊錶中元素數量為0。
151///
152public
void
wideordertree()
153166
if (temp.righttree != null
)167
170}
171}
172}
173}
174 }
C 實現二叉樹
其中的 linkstack.h 和 linkqueue 分別在 以下兩篇博文裡 linkstack linkqueue include include linkstack.h include linkqueue.h using namespace std 定義節點 templatestruct no...
二叉樹C 實現
最近整理原來的一些 腦子有點不好使,還是記下來吧。binary tree.h,遍歷包含了遞迴和非遞迴兩種,層次遍歷 ifndef binary tree h define binary tree h templatestruct binode templateclass bitree endif b...
C 實現二叉樹
實現 pragma once include include include using namespace std templatestruct bintreenode templateclass binarytree binarytree char str 根據先序字串行建立二叉樹 binary...