時間限制:
難度:3
描述
題目很簡單,給你一棵二叉樹的後序和中序序列,求出它的前序序列(so easy!)。
輸入
輸入有多組資料(少於100組),以檔案結尾結束。 每組資料僅一行,包括兩個字串,中間用空格隔開,分別表示二叉樹的後序和中序序列(字串長度小於26,輸入資料保證合法)。
輸出每組輸出資料單獨佔一行,輸出對應得先序序列。
樣例輸入
acbfged abcdefgcdab cbad
樣例輸出
dbacegfbcad
**原創
題解:由中後序重建二叉樹,再輸出;
**:
#include#include#include
#include
#include
#include
using
namespace
std;
struct
node
};int find(char *a , char
x) }
return0;
}node* build(int n, char *a, char *b)
void visit(node *root)
intmain()
return0;
}
其實也可以不建樹,直接輸出;
**:
#include#include#include
#include
#include
#include
using
namespace
std;
/*struct node
};int find(char *a , char x)
}return 0;
}node* build(int n, char *a, char *b)
void visit(node *root)
*/void dfs(int n, char *a, char *b)
intmain()
return0;
}
6 3 3 二叉樹重建 已知前序和中序求後序
在一棵二叉樹總,前序遍歷結果為 dbacegf,中序遍歷結果為 abcdefg,求後序遍歷結果。我們知道 前序遍歷方式為 根節點 左子樹 右子樹 中序遍歷方式為 左子樹 根節點 右子樹 後序遍歷方式為 左子樹 右子樹 根節點 從這裡可以看出,前序遍歷的第乙個值就是根節點,然後再中序遍歷中找到這個值,...
前序 中序 後序遍歷結果重建二叉樹
源 已知一棵二叉樹的前序遍歷結果為,中序遍歷結果為為,請問這可二叉樹的後序遍歷結果是多少?對於這樣的題目,如果真的完全了解樹的前中後序的原理,其實是不難的。三種遍歷都是從根結點開始,前序遍歷是先列印在遞迴左和右,中序遍歷是先遞迴左,再列印,最後在遞迴右。所以前序遍歷結果為,第乙個數字1被列印出來,就...
二叉樹 已知前序和中序,求後序
題目描述 若某二叉樹的前遍歷訪問順序是序abdgcefh,中序遍歷順序是dgbaechf,則後序遍歷的訪問順序是什麼。若某二叉樹的前遍歷訪問順序是序abdgcefh,中序遍歷順序是dgbaechf,則後序遍歷的訪問順序是什麼。分析 首先要明確乙個基礎的問題,前序遍歷的順序是 根 左 右 中序遍歷的順...