#include"binarytree.h"
#include
"binarytreenode.h"
#include
"structure.h"
#include
"optoken.h"
#include
#include
#include
using
namespace std;
class cretree
*/ cretree( vector v ): infix( v ){}
binarytree,struct ste> create_mid();
private:
vector infix;};
binarytree,struct ste> cretree::create_mid()
//while
sym.push( op1 );
}//else
if( op == '(')
sym.push( optoken( op ) );
else
if( op == ')')
while( !sym.empty())
}else
if( infix[j].a != 0 )//為數字時直接入棧
while(!sym.empty() )
else
sym.pop();
} tree = treestack.top();//樹的" = "運算子過載了
return tree;}
這只是其中的最為主要的部分,至於其他的細節部分日後再一一帖上。。。先看一下結果:
逆波蘭表示法
逆波蘭表示發是一種將運算子寫在運算元後面的描述程式 算式 的方法。舉個例子,我們平常用中綴表示法描述的算式 1 2 5 4 改為逆波蘭表示法之後則是1 2 5 4 相較於中綴表示法,逆波蘭表示法的優勢在於不需要括號。請輸出以逆波蘭表示法輸入的算式的計算結果。輸入在1行中輸入1個算式。相鄰的符號 運算...
逆波蘭表示的應用
逆波蘭表示式又叫做 字尾表示式 在通常的表示式中,二元運算子總是置於與之相關的兩個運算物件之間,這種表示法也稱為中綴表示。波蘭邏輯學家j.lukasiewicz於1929年提出了另一種表示表示式的方法,按此方法,每一運算子都置於其運算物件之後,故稱為字尾表示。逆波蘭表示式最常應用的場景是用於四則運算...
中綴轉字尾 逆波蘭表示
計算機無法識別數學表示式中的括號以及四則運算的先後順序,因此需要把數學表達示轉換成一種計算機能識別的,逆波蘭表示就能很好的解決這個問題。逆波蘭表示是數學表示式中的一種不需要括號的字尾表達法。即把乙個中綴數學表示式改變成乙個字尾表示。中綴表示的意思就是運算子在要計算的數字中間,而字尾表示就是運算子在要...