輸入格式:
第一行給出正整數n(≤30),是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。
輸出格式:
在一行中輸出preorder: 以及該樹的先序遍歷結果。數字間有1個空格,行末不得有多餘空格。
輸入樣例:
7輸出樣例:2 3 1 5 7 6 4
1 2 3 4 5 6 7
preorder: 4 1 3 2 6 5 7
#include
using
namespace std;
int mid[31]
, post[31]
;typedef
struct tnode *tree;
struct tnode
;tree build
(int
*mid,
int*post,
int n)
tree t;
t =(tree)
malloc
(sizeof
(struct tnode));
t -> data =
*p;int len = p - mid;
t -> left =
build
(mid, post, len)
; t -
> right =
build
(p +
1, post + len, n - len -1)
;return t;
}void
printpre
(tree t)
}int
main()
7 1 根據後序和中序遍歷輸出先序遍歷(25 分)
題目鏈結 本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。第一行給出正整數 n 是樹中結點的個數。隨後兩行,每行給出 n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。在一行中輸出preorder 以及該樹的先序遍歷結果。數字間...
7 7 根據後序和中序遍歷輸出先序遍歷 25分
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。輸入格式 第一行給出正整數n 30 是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。輸出格式 在一行中輸出preorder 以及該樹的先序遍歷...
7 3 根據後序和中序遍歷輸出先序遍歷 25分
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。輸入格式 第一行給出正整數n 30 是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。輸出格式 在一行中輸出preorder 以及該樹的先序遍歷...