時間限制:
1000 ms | 記憶體限制:
65535 kb
難度:3 描述
題目很簡單,給你一棵二叉樹的後序和中序序列,求出它的前序序列(so easy!)。
輸入輸入有多組資料(少於100組),以檔案結尾結束。
每組資料僅一行,包括兩個字串,中間用空格隔開,分別表示二叉樹的後序和中序序列(字串長度小於26,輸入資料保證合法)。
輸出每組輸出資料單獨佔一行,輸出對應得先序序列。
樣例輸入
acbfged abcdefgcdab cbad
樣例輸出
dbacegfbcad
**原創
上傳者tc_黃平
都是先建立二叉樹,再先序輸出
#include#includestruct node
};void buildtree(node *&root,char *post,char *in,int len)
root=new node();
root->data =post[len-1];
char *s=strchr(in,root->data);
int leftlen=strlen(in)-strlen(s);
int rightlen=len-leftlen-1;
buildtree(root->left ,post,in,leftlen);
buildtree(root->right ,post+leftlen,s+1,rightlen);
} void preorder(node *root)
int main()
return 0;
}
這個是不用建立二叉樹,用陣列儲存每次查到的節點,最後輸出。
#include#includevoid buildtree(char *pre,char *post,char *in,int len) //而post是要從post+n開始考慮的,但不考慮b在陣列的個數了,即少了b這個元素,陣列長度長度-1.
int main()
return 0;
}
nyoj 756 重建二叉樹
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 題目很簡單,給你一棵二叉樹的後序和中序序列,求出它的前序序列 so easy 輸入 輸入有多組資料 少於100組 以檔案結尾結束。每組資料僅一行,包括兩個字串,中間用空格隔開,分別表示二叉樹的後序和中序序列 字串長度小於26,輸...
NYOJ 題目756 重建二叉樹
時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 題目很簡單,給你一棵二叉樹的後序和中序序列,求出它的前序序列 so easy 輸入輸入有多組資料 少於100組 以檔案結尾結束。每組資料僅一行,包括兩個字串,中間用空格隔開,分別表示二叉樹的後序和中序序列 字串長度小於26,輸入...
nyoj221 nyoj756 重建二叉樹
nyoj221題目鏈結 已知二叉樹前序中序遍歷求二叉樹後序遍歷 已知二叉樹前序中序遍歷可重建二叉樹,進而遍歷後序。include include include struct node node rebuildtree char preorder,char midorder,int len 重建二叉...