給一棵二叉樹的層序遍歷序列和中序遍歷序列,求這棵二叉樹的先序遍歷序列和後序遍歷序列。
每個輸入檔案中一組資料。
第一行乙個正整數n(1<=n<=30),代表二叉樹的結點個數(結點編號為1~n)。接下來兩行,每行n個正整數,分別代表二叉樹的層序遍歷序列和中序遍歷序列。資料保證序列中1~n的每個數出現且只出現一次。
輸出兩行,每行n個正整數,分別代表二叉樹的先序遍歷序列和後序遍歷序列。每行末尾不輸出額外的空格。
7
3 5 4 2 6 7 1
2 5 3 6 4 7 1
3 5 2 4 6 7 1
2 5 6 1 7 4 3
shoutmon
15浙大考研機試模擬賽
#include #includeusing namespace std;
struct node
;int layer[31],in[31],n;
vectorans;
void creat(node * & root,int val,int index)
int u;
for(u=0;uval)
break;
}if(ur,val,index);
else
creat(root->l,val,index);
}void pre(node * root)
}void outans()
}int main()
creat(root,layer[i],u);
}ans.clear();
pre(root);
outans();
ans.clear();
post(root);
outans();
return 0;
}
還原二叉樹
給定一棵二叉樹的先序遍歷序列和中序遍歷序列,要求計算該二叉樹的高度。輸入資料有多組,每組資料第一行輸入 1個正整數 n 1 n 50 為樹中結點總數,隨後 2行先後給出先序和中序遍歷序列,均是長度為 n的不包含重複英文本母 區分大小寫 的字串。輸出乙個整數,即該二叉樹的高度。9 abdfghiec ...
還原二叉樹
資料結構實驗之二叉樹四 還原二叉樹 time limit 1000ms memory limit 65536k 有疑問?點這裡 題目描述 給定一棵二叉樹的先序遍歷序列和中序遍歷序列,要求計算該二叉樹的高度。輸入輸入資料有多組,每組資料第一行輸入1個正整數n 1 n 50 為樹中結點總數,隨後2行先後...
還原二叉樹
5 9 還原二叉樹 25分 給定一棵二叉樹的先序遍歷序列和中序遍歷序列,要求計算該二叉樹的高度。輸入首先給出正整數n le 50 為樹中結點總數。下面兩行先後給出先序和中序遍歷序列,均是長度為n的不包含重複英文本母 區別大小寫 的字串。輸出為乙個整數,即該二叉樹的高度。9 abdfghiec fdh...