題目描述:輸入一系列整數,建立二叉排序數,並進行前序,中序,後序遍歷。
輸入:輸入第一行包括乙個整數n(1<=n<=100)。
接下來的一行包括n個整數。
輸出:可能有多組測試資料,對於每組資料,將題目所給資料建立乙個二叉排序樹,並對二叉排序樹進行前序、中序和後序遍歷。
每種遍歷結果輸出一行。每行最後乙個資料之後有乙個空格。
樣例輸入:
51 6 5 9 8
樣例輸出:
1 6 5 9 81 5 6 8 9
5 8 9 6 1
輸入中可能有重複元素,但是輸出的二叉樹遍歷序列中重複元素不用輸出。
**:
#include struct node tree[100];
int loc;
void preorder(node *t)
void inorder(node *t)
void postorder(node *t)
node *create()
node *insert(node *t, int x)
else if(t->d > x)
t->lchild = insert(t->lchild,x);
else if(t->d < x)
t->rchild = insert(t->rchild,x);
return t;
}int main() {
int n,x,i;
while(scanf("%d",&n)!=eof) {
loc = 0;
node *t= null;
for(i=0;i
滿足如下條件的二叉樹:對於樹上任一結點,其數值總比左子樹上任意結點的數值大,比右子樹小。
若對二叉排序樹進行中序遍歷,那麼其結果是乙個公升序序列。
t = insert(t,x);
題目1201 二叉排序樹
題目描述 輸入一系列整數,建立二叉排序數,並進行前序,中序,後序遍歷。輸入 輸入第一行包括乙個整數n 1 n 100 接下來的一行包括n個整數。輸出 可能有多組測試資料,對於每組資料,將題目所給資料建立乙個二叉排序樹,並對二叉排序樹進行前序 中序和後序遍歷。每種遍歷結果輸出一行。每行最後乙個資料之後...
題目1201 二叉排序樹
時間限制 1 秒 記憶體限制 32 兆 特殊判題 否 提交 3260 解決 1385 題目描述 輸入一系列整數,建立二叉排序數,並進行前序,中序,後序遍歷。輸入 輸入第一行包括乙個整數n 1 n 100 接下來的一行包括n個整數。輸出 可能有多組測試資料,對於每組資料,將題目所給資料建立乙個二叉排序...
題目1201 二叉排序樹 九度
題目描述 輸入一系列整數,建立二叉排序數,並進行前序,中序,後序遍歷。輸入 輸入第一行包括乙個整數n 1 n 100 接下來的一行包括n個整數。輸出 可能有多組測試資料,對於每組資料,將題目所給資料建立乙個二叉排序樹,並對二叉排序樹進行前序 中序和後序遍歷。每種遍歷結果輸出一行。每行最後乙個資料之後...