題目描述:
輸入:兩個字串,其長度n均小於等於26。
第一行為前序遍歷,第二行為中序遍歷。
二叉樹中的結點名稱以大寫字母表示:a,b,c....最多26個結點。
輸出:輸入樣例可能有多組,對於每組測試樣例,
輸出一行,為後序遍歷的字串。
樣例輸入:
abcbacfdxeag
xdefag
樣例輸出:
bcaxedgaf
**:
#include #include using namespace std;
char pre[27],in[27];
int loc;
struct node tree[50];
node *create()
node *build(int s1,int e1,int s2,int e2)
}if(root!=s2)
ret->lchild = build(s1+1,s1+(root-s2),s2,root-1);
if(root!=e2)
ret->rchild = build(s1+(root-s2)+1,e1,root+1,e2);
return ret;
}void postorder(node *t)
int main()
return 0;
}
一、二叉樹:
1.二叉樹結點定義:
struct node ;
2.中序遍歷方法:
void inorder(node *t)
二、本題需要根據先序和中序遍歷序列還原該二叉樹。其次,需要將還原的二叉樹儲存在記憶體中,最後進行後序遍歷。
例:先序xdagfe,中序adgxfe.
x為根結點,左子樹為adg,右子樹為fe,左子樹有3個元素,右子樹有2個元素。先序遍歷中dag為x的左子樹前序遍歷結果,fe為x右子樹
遍歷結果。......
題目1078 二叉樹遍歷
題目描述 輸入 兩個字串,其長度n均小於等於26。第一行為前序遍歷,第二行為中序遍歷。二叉樹中的結點名稱以大寫字母表示 a,b,c.最多26個結點。輸出 輸入樣例可能有多組,對於每組測試樣例,輸出一行,為後序遍歷的字串。樣例輸入 abc bacfdxeag xdefag 樣例輸出 bca xedga...
題目1078 二叉樹遍歷
此題涉及到二叉樹的遍歷以及二叉樹的建立 include include using namespace std struct node 定義樹的結點 node tree 50 結點陣列 string str1,str2 void postorder node t if t rchild null c...
Jobdu 題目1078 二叉樹遍歷
題目描述 輸入 兩個字串,其長度n均小於等於26。第一行為前序遍歷,第二行為中序遍歷。二叉樹中的結點名稱以大寫字母表示 a,b,c.最多26個結點。輸出 輸入樣例可能有多組,對於每組測試樣例,輸出一行,為後序遍歷的字串。樣例輸入 abc bacfdxeag xdefag 樣例輸出 bca xedga...