括號匹配 (棧和佇列)
題目描述:
假設一個算術表示式中可以包含三種括號:圓括號“(”和“)”,方括號“[”和“]”和花括號“{”和“ ”,且這三種括號可按任意的次序巢狀使用(如:…[…{… …[…]…]…[…]…(…)…)。編寫判別給定表示式中所含括號是否正確配對出現的演算法。輸出結果YES 或者 NO。
輸入
5+{[2X5]+2}
輸出
YES
樣例輸入
8-[{2+7]}
樣例輸出
NO
解題思路:利用棧的基本知識
程式碼如下:
i=0; i<num; i++) // 具體括號匹配操作
'[' )st.pop();
|