描述
創(chuàng)新互聯(lián)服務(wù)項目包括碧江網(wǎng)站建設(shè)、碧江網(wǎng)站制作、碧江網(wǎng)頁制作以及碧江網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,碧江網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到碧江省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!我們可以把由“0”和“1”組成的字符串分為三類:全“0”串稱為B串,全“1”串稱為I串,既含“0”又含“1”的串則稱為F串。
FBI樹是一種二叉樹,它的結(jié)點類型也包括F結(jié)點,B結(jié)點和I結(jié)點三種。由一個長度為2^N的“01”串S可以構(gòu)造出一棵FBI樹T,遞歸的構(gòu)造方法如下:
1) T的根結(jié)點為R,其類型與串S的類型相同;
2) 若串S的長度大于1,將串S從中間分開,分為等長的左右子串S1和S2;由左子串S1構(gòu)造R的左子樹T1,由右子串S2構(gòu)造R的右子樹T2。
現(xiàn)在給定一個長度為2^N的“01”串,請用上述構(gòu)造方法構(gòu)造出一棵FBI樹,并輸出它的后序遍歷序列。
輸入
輸入的第一行是一個整數(shù)N(0<=N<=10),第二行是一個長度為2^N的“01”串。
輸出
輸出包括一行,這一行只包含一個字符串,即FBI樹的后序遍歷序列。
樣例輸入
樣例輸出
題目上傳者
crq
分析:樹的例題,runtime errorr好幾次/(ㄒoㄒ)/~~
ku要開到2的10次方1024;
注意l==r時把最后一個*t的ltree和rtree指向NULL//
別的不說,簡單題,上代碼
#include#include//根結(jié)點自行創(chuàng)造//
using namespace std;
int n;
int f1,f0;
char ku[1500];
struct tree{
char data;
tree *ltree,*rtree;
};
void create_tree(int l,int r,tree *&t)
{
f1=0;f0=0;
for(int i=l;i<=r;i++)
{
if(ku[i]=='1')
f1=1;
else if(ku[i]=='0')
f0=1;
}
char temp;
if(f1&&f0)
temp='F';
else if(f1)
temp='I';
else if(f0)
temp='B';
t=(tree*)malloc(sizeof(tree));
t->data=temp;
if(l==r)
{
t->ltree=NULL;
t->rtree=NULL;
return ;
}
int mid=l+r>>1;
create_tree(l,mid,t->ltree);
create_tree(mid+1,r,t->rtree);
}
void after(tree *t)
{
if(t)
{
after(t->ltree);
after(t->rtree);
cout<data;
}
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>n;
int l=1,r=1;
if(n)
{
while(n--)
r*=2;
}
for(int i=l;i<=r;i++)
cin>>ku[i];
tree *t=NULL;
create_tree(l,r,t);
after(t);
return 0;
}
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享文章:TZOJFBI樹-創(chuàng)新互聯(lián)
鏈接地址:http://jinyejixie.com/article36/cesepg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、云服務(wù)器、品牌網(wǎng)站設(shè)計、小程序開發(fā)、網(wǎng)頁設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容