資料結構 016中綴轉字尾表示式

2021-10-05 23:00:13 字數 985 閱讀 1779

//中綴轉字尾表示式

//1.若為'(',直接入棧

//2.若為')',出棧直到'(',並刪掉棧中的'('

//3.若為'+','-','*','/』

// (1)棧空,入棧

// (2)若棧頂為'(',入棧

// (3)若比棧頂優先順序高,入棧

// 否則,彈出棧頂元素,直到出現'('或者比棧頂優先順序低

//4.遍歷完成,若棧非空依次彈出所有元素

#include

#include

using

namespace std;

#define maxsize 50

typedef

char elem;

typedef

struct stack sqstack;

//初始化

void

init_s

(sqstack &s)

//判空

bool

empty_s

(sqstack s)

//入棧

bool

push_s

(sqstack &s, elem e)

//出棧

void

pop_s

(sqstack &s)

elem get_top

(sqstack s)

intprior

(char c)

}int

main()

pop_s

(s);}if

(str[i]

=='+'

|| str[i]

=='-'

|| str[i]

=='*'

|| str[i]

=='/')}

}}while(!

empty_s

(s))

return0;

}

1003 中綴表示式轉字尾表示式

1003.中綴表示式轉字尾表示式 total 466accepted 89 time limit 1sec memory limit 256mb description 將中綴表示式 infix expression 轉換為字尾表示式 postfix expression 假設中綴表示式中的運算元均...

資料結構 中綴表示式轉字尾表示式

話不多說上例子 1 2 3 4 5 1 2 3 4 5 中綴表示式轉字尾表示式思路分析 1.首先需要兩個棧運算子棧 s1和儲存中間結果的棧 s2 2.從左至右掃瞄中綴表示式 2.1當前為運算元,將其壓棧至s2 2.2當前為運算子 2.2.1如果s1為空或者棧頂運算子為左括號 則將此運算子直接入s1棧...

SzNOI c003 中綴表示式轉字尾表示式

個人覺得我寫的應該是目前網上寫的版本比較簡單的了。這也是我開部落格的原因,盡量寫出簡單的 一方面可以鞏固自己,一方面也能方便別人 中綴表示式轉化為字尾表示式是通過棧實現 思路是,寫兩個函式,分別是算術操作符的優先順序,這個想法在資料結構 用物件導向方法與c 裡面這本書有大概提到 isp是棧內優先數,...