青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

USACO 3.4 American Heritage

給出一個(gè)樹的中序遍歷和先序遍歷,求它的后序遍歷。

遞歸求解即可。
先序遍歷中的第一個(gè)值必為中間結(jié)點(diǎn)的值,然后在中序遍歷中找到這個(gè)值。這個(gè)值左邊的為左子樹的中序遍歷,右邊為右子樹的中序遍歷。
先序遍歷中,前半部分為左子樹的先序遍歷,其長度和中序子左子樹的長度相同。因此兩個(gè)子樹的中序和先序遍歷都可以確定了。

構(gòu)造出完整的樹之后,再后序遍歷即可。


#include?<iostream>
#include?
<fstream>

using?namespace?std;

ifstream?fin(
"heritage.in");
ofstream?fout(
"heritage.out");

#ifdef?_DEBUG
#define?out?cout
#define?in?cin
#else
#define?out?fout
#define?in?fin
#endif

char?in_order[27];
char?pre_order[27];

struct?tree_node{
????
char?value;
????tree_node
*left,*right;
????tree_node(){
????????left?
=?right?=?NULL;
????}
};

tree_node
*??build_tree(int?in_start,int?in_end,int?pre_start,int?pre_end)
{
????tree_node?
*node?=?new?tree_node;

????node
->value?=??pre_order[pre_start];

????
if(pre_start>pre_end)?return?NULL;

????
if(pre_start!=pre_end){
????????
int?pos;
????????
for(pos=in_start;pos<=in_end;++pos){
????????????
if(in_order[pos]==pre_order[pre_start])
????????????????
break;
????????}
????????node
->left?=?build_tree(in_start,pos-1,pre_start+1,pre_start+pos-in_start);
????????node
->right?=?build_tree(pos+1,in_end,pre_start+pos-in_start+1,pre_end);
????}

????
return?node;
}

void?post_traverse(const?tree_node*node)
{
????
if(node==NULL)?return;

????
if(node->left!=NULL){
????????post_traverse(node
->left);
????}

????
if(node->right!=NULL){
????????post_traverse(node
->right);
????}

????
out<<node->value;
}


void?solve()
{
????
in>>in_order;
????
in>>pre_order;

????post_traverse(?build_tree(
0,strlen(in_order)-1,0,strlen(pre_order)-1)?);

????
out<<endl;
}


int?main(int?argc,char?*argv[])
{
????solve();?
????
return?0;
}



其實(shí)不需要建樹,再后序遍歷。直接在建樹過程中后序輸出即可。

#include?<iostream>
#include?
<fstream>

using?namespace?std;

ifstream?fin(
"heritage.in");
ofstream?fout(
"heritage.out");

#ifdef?_DEBUG
#define?out?cout
#define?in?cin
#else
#define?out?fout
#define?in?fin
#endif

char?in_order[27];
char?pre_order[27];
char?post_order[27];

struct?tree_node{
????
char?value;
????tree_node
*left,*right;
????tree_node(){
????????left?
=?right?=?NULL;
????}
};

void??build_tree(int?in_start,int?in_end,int?pre_start,int?pre_end)
{
????
if(pre_start>pre_end)?return;

????
if(pre_start!=pre_end){
????????
int?pos;
????????
for(pos=in_start;pos<=in_end;++pos){
????????????
if(in_order[pos]==pre_order[pre_start])
????????????????
break;
????????}
????????build_tree(in_start,pos
-1,pre_start+1,pre_start+pos-in_start);
????????build_tree(pos
+1,in_end,pre_start+pos-in_start+1,pre_end);
????}

????
out<<pre_order[pre_start];
}

void?solve()
{
????
in>>in_order;
????
in>>pre_order;

????build_tree(
0,strlen(in_order)-1,0,strlen(pre_order)-1);

????
out<<endl;
}


int?main(int?argc,char?*argv[])
{
????solve();?
????
return?0;
}


posted on 2009-07-10 18:51 YZY 閱讀(305) 評(píng)論(0)  編輯 收藏 引用 所屬分類: AlgorithmUSACO圖論

導(dǎo)航

<2009年7月>
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678

統(tǒng)計(jì)

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

搜索

積分與排名

最新評(píng)論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线高清| 亚洲第一黄网| 国产亚洲在线观看| 国产精品任我爽爆在线播放| 欧美激情久久久久久| 欧美经典一区二区三区| 欧美日韩国产综合网| 国产精品国产一区二区| 国产欧美日韩亚洲| 一区二区三区在线高清| 亚洲精品一区二区三区樱花| 在线视频亚洲| 久久久久久久久久久久久9999| 久久香蕉国产线看观看网| 欧美激情精品久久久久久变态| 91久久线看在观草草青青| 一区二区三区高清不卡| 久久久久久久综合日本| 欧美日韩一区二区在线观看视频| 国产视频在线观看一区二区三区| 亚洲精选在线| 久久夜色精品国产欧美乱极品| 亚洲精品免费一区二区三区| 校园春色国产精品| 欧美激情一级片一区二区| 国产日产高清欧美一区二区三区| 亚洲黄色av| 欧美中文字幕视频在线观看| 亚洲黄色在线视频| 欧美专区18| 国产精品一区亚洲| 亚洲免费电影在线| 美女精品自拍一二三四| 亚洲一区二区毛片| 欧美久久久久久久久| 精品电影一区| 久久国产精品一区二区三区四区 | 老司机免费视频久久| 亚洲美女色禁图| 久久婷婷综合激情| 国产一区二区三区自拍| 亚洲无线视频| 91久久久在线| 欧美韩国在线| 亚洲国产精品美女| 毛片一区二区| 欧美影院一区| 国产一区二区三区在线免费观看 | 国产午夜精品美女视频明星a级| 亚洲精华国产欧美| 老妇喷水一区二区三区| 香蕉尹人综合在线观看| 国产精品一区二区三区免费观看| 中文国产一区| 日韩一级欧洲| 欧美日韩一区精品| 一区二区三区久久精品| 亚洲人在线视频| 欧美国产专区| 一区二区三区日韩欧美| 亚洲人成在线观看网站高清| 模特精品在线| 99精品视频免费全部在线| 亚洲国产精品女人久久久| 美日韩精品视频免费看| 亚洲国产另类久久精品| 91久久嫩草影院一区二区| 欧美精品乱人伦久久久久久| 一本大道久久a久久精品综合| 亚洲老司机av| 国产精品乱码人人做人人爱| 午夜国产欧美理论在线播放| 亚洲免费在线| 黑丝一区二区三区| 亚洲国产精品久久久久| 欧美日韩午夜视频在线观看| 亚洲尤物视频网| 午夜久久资源| 亚洲人成小说网站色在线| 亚洲免费播放| 国产欧美高清| 欧美大片第1页| 欧美视频一二三区| 久久久久久夜| 欧美国产精品人人做人人爱| 亚洲亚洲精品三区日韩精品在线视频| 亚洲视频久久| 国产专区精品视频| 亚洲国产精品123| 国产精品麻豆欧美日韩ww| 狼狼综合久久久久综合网| 欧美日韩1区2区3区| 翔田千里一区二区| 女生裸体视频一区二区三区| 亚洲欧美一区二区视频| 久色成人在线| 午夜精品亚洲| 欧美激情一区二区三区蜜桃视频| 午夜视频久久久| 欧美大学生性色视频| 久久xxxx精品视频| 欧美日韩在线高清| 免费不卡在线观看av| 国产精品久久综合| 亚洲国产日韩欧美在线99| 国产日韩欧美高清| 欧美国产日产韩国视频| 蜜臀久久99精品久久久画质超高清| 欧美精品色综合| 久久久99免费视频| 欧美三区视频| 91久久精品国产91久久| 国产一区二区电影在线观看| 99精品99久久久久久宅男| 在线 亚洲欧美在线综合一区| 亚洲网站啪啪| 亚洲视屏在线播放| 欧美高潮视频| 欧美jjzz| 怡红院精品视频| 欧美在线看片| 久久av一区二区三区| 国产精品久久久久国产精品日日| 亚洲国产精品久久久久秋霞影院| 国内精品亚洲| 久久成人免费视频| 久久国产精品99精品国产| 国产精品入口麻豆原神| 亚洲午夜av在线| 午夜精品一区二区三区在线| 国产精品h在线观看| 艳女tv在线观看国产一区| 日韩视频―中文字幕| 欧美黄色影院| 亚洲人成小说网站色在线| 99热免费精品在线观看| 欧美精选在线| 99re热精品| 欧美一级播放| 国产在线乱码一区二区三区| 欧美在线影院| 欧美大片在线观看一区二区| 亚洲国内在线| 欧美日韩免费看| 亚洲精品中文字幕女同| 亚洲一区二区三区欧美| 国产精品日韩欧美一区| 欧美一区二区三区在线观看视频| 久久久99免费视频| 亚洲人成人一区二区三区| 欧美国产日本| 在线亚洲免费视频| 久久久精品五月天| 最新国产精品拍自在线播放| 欧美激情第3页| 在线综合亚洲欧美在线视频| 久久福利毛片| 亚洲三级电影全部在线观看高清| 欧美片第1页综合| 午夜精品久久久久久久久久久久| 久久青草久久| 一区二区三区.www| 国产一区二区三区在线播放免费观看| 久久狠狠一本精品综合网| 亚洲国产日韩欧美一区二区三区| 这里只有视频精品| 依依成人综合视频| 国产精品va在线播放我和闺蜜| 欧美一区二区三区在线免费观看 | 亚洲综合不卡| 免费观看在线综合| 亚洲在线日韩| 亚洲激情中文1区| 国产精品美女www爽爽爽| 久久久五月天| 亚洲一区精彩视频| 午夜国产一区| 欧美精品一区二区三区很污很色的| 99一区二区| 久久久久网站| 99视频日韩| 极品少妇一区二区三区| 国产精品国产一区二区| 免费观看亚洲视频大全| 亚洲欧洲av一区二区| 亚洲国产色一区| 久久久久.com| 亚洲欧美日韩国产中文在线| 亚洲激情欧美激情| 悠悠资源网久久精品| 国产精品自拍小视频| 欧美日韩中文精品| 欧美成人综合在线| 久久亚洲视频| 欧美一区二区在线看| 午夜久久久久| 亚洲综合首页| 在线亚洲自拍| 在线视频中文亚洲| 一区二区三区欧美视频|