這是乙個將中綴式轉化成表示式樹然後在遍歷輸出的題
**操作總結為:
1、把中綴式轉換為字尾式。
2、把字尾式轉化為表示式樹。
3、將表示式樹先序、中序、後序遍歷得出字首式、中綴式、字尾式。
以下是**:
#include #include struct node
;char sa[100],sb[100],sc[100];
int p;
void first(struct node *q)
printf("%c",q->s);
first(q->l);
first(q->r);
}void infix(struct node *q)
infix(q->l);
printf("%c",q->s);
infix(q->r);
}void postfix(struct node *q)
postfix(q->l);
postfix(q->r);
printf("%c",q->s);
}void h()
else if(sa[p]=='+'||sa[p]=='-')
sc[y]=sa[p];
y++;
}else if(sa[p]=='*'||sa[p]=='/')
sc[y]=sa[p];
y++;
}else if(sa[p]=='(')
else if(sa[p]==')')
y--;}}
while(y!=0)
sb[x]='\0';
}int main()
,*pi;
for(i=0;i='a'&&sb[i]<='z')
else
}first(po[0]);
printf("\n");
infix(po[0]);
printf("\n");
postfix(po[0]);
printf("\n");
return 0;
}
SDUT 2484 算術表示式的轉換
算術表示式的轉換time limit 1000ms memory limit 65536k 有疑問?點這裡 題目描述 小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。因為有了資料結構的基礎小明很快就解出了這個問題,但是他突然想到怎麼求出算術表示式的字...
sdut 2484 算術表示式的轉換
time limit 1000 ms memory limit 65536 kib submit statistic discuss problem description 小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。因為有了資料結構的基礎小明很...
SDUT2484 算術表示式的轉換
算術表示式的轉換 time limit 1000 ms memory limit 65536 kib problem description 小明在學習了資料結構之後,突然想起了以前沒有解決的算術表示式轉化成字尾式的問題,今天他想解決一下。因為有了資料結構的基礎小明很快就解出了這個問題,但是他突然想...