資源簡(jiǎn)介
一個(gè)簡(jiǎn)單的算法,利用棧實(shí)現(xiàn)中綴表達(dá)式與后綴表達(dá)式的轉(zhuǎn)換
代碼片段和文件信息
#include?
#include?
#include?
using?namespace?std;
bool?islegal(char?ch)
{
????????return?((ch?>=?‘0‘?&&?ch?<=?‘9‘)||(ch?>=?‘a(chǎn)‘&&ch?<=?‘z‘)||(ch>=?‘A‘&&ch<=‘Z‘));
}
bool?isOperator(char?ch)
{
????????switch(ch)
????????{
????????????????case?‘+‘:
????????????????case?‘-‘:
????????????????case?‘*‘:
????????????????case?‘/‘:
case?‘%‘:
????????????????????????return?true;
????????????????default:
????????????????????????return?false;
????????}
}
bool?lowerPriority(char?a?char?b)
{
????????if((a?==?‘+‘?||?a?==?‘-‘)?&&?(b?==?‘*‘?||?b?==?‘/‘||b?==?‘%‘))
????????????????return?true;
????????else
????????????????return?false;
}
bool?transformer(string?&inExpr?string?&outExpr)
{
????????string::size_type?idx?size;
????????stack
評(píng)論
共有 條評(píng)論