輸入格式:
第一行給出正整數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;
typedef
struct node
*tree;
//後中得到二叉樹
tree postorder
(int post,
int mid,
int len)
//後序中序都是左開始,所以不需要改變,改變len即可
bt->lchild=
postorder
(post,mid,i)
;//後中最後才是右,需要更新函式引數post,mid,均改為右子樹的部分,更新右子樹的長度
bt->rchild=
postorder
(post+i,mid+i+
1,len-i-1)
;return bt;
}//前序遍歷
void
pre(tree bt)
intmain()
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。輸入格式 第一行給出正整數nn le 30 30 是樹中結點的個數。隨後兩行,每行給出nn個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。輸出格式 在一行中輸出preorder 以...
根據後序和中序遍歷輸出先序遍歷
本題要求根據給定的一棵二叉樹的後序遍歷和中序遍歷結果,輸出該樹的先序遍歷結果。第一行給出正整數n 30 是樹中結點的個數。隨後兩行,每行給出n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。在一行中輸出preorder 以及該樹的先序遍歷結果。數字間有1個空...
根據後序和中序遍歷輸出先序遍歷
n 是樹中結點的個數。隨後兩行,每行給出 n個整數,分別對應後序遍歷和中序遍歷結果,數字間以空格分隔。題目保證輸入正確對應一棵二叉樹。7 2 3 1 5 7 6 4 1 2 3 4 5 6 7preorder 4 1 3 2 6 5 7 思路 一.根據後序遍歷和中序遍歷建樹 1.二叉鍊錶結構的定義 ...