逆波蘭 之樹形表示

2021-06-10 11:33:32 字數 941 閱讀 5904

#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年提出了另一種表示表示式的方法,按此方法,每一運算子都置於其運算物件之後,故稱為字尾表示。逆波蘭表示式最常應用的場景是用於四則運算...

中綴轉字尾 逆波蘭表示

計算機無法識別數學表示式中的括號以及四則運算的先後順序,因此需要把數學表達示轉換成一種計算機能識別的,逆波蘭表示就能很好的解決這個問題。逆波蘭表示是數學表示式中的一種不需要括號的字尾表達法。即把乙個中綴數學表示式改變成乙個字尾表示。中綴表示的意思就是運算子在要計算的數字中間,而字尾表示就是運算子在要...