假設表示式中允許包含兩種括號:圓括號和方括號。編寫乙個演算法判斷表示式中的括號是否正確配對。
由括號構成的字串,包含( )[ ]。
如果匹配輸出yes,否則輸出no。
複製
[(())]
yes
解決思想:拿到字串後,遍歷字串,當遇到左括號就進棧,右括號棧頂元素出棧,如果括號是匹配的,則最終棧空。
#include#includetypedef struct stackstack;
int isempty(stack &st) //判斷棧是否為空
return 0;
}void fetchquote(char a,int len) //括號匹配函式')
for(int i=0;ielse
'&&stack.data[stack.top]=='
else
} }if(isempty(stack))
else
}int main()
; char quo2[6]=;
char quo[100];
while(scanf("%s",quo)!=eof)
//fetchquote(quo1,6);
// fetchquote(quo2,6);
}
棧之應用 括號匹配
一 括號匹配的四種可能性 左右括號配對次序不正確 右括號多於左括號 左括號多於右括號 左右括號匹配正確 二 測試 char a abc 左右括號次序匹配不正確 char b abc 右括號多於左括號 char c abc 左括號多於右括號 char d abc 左右括號匹配正確 三 大概思路 1 判...
棧的應用 括號匹配
3.1棧的應用 括號匹配 一 實驗目的1 掌握堆疊特殊線性表的儲存方式的基本操作方法。2 掌握堆疊後進先出運算原則在解決實際問題中的應用。3 掌握使用棧的原理來解決表示式中的括號配對問題。二 實驗內容 假設乙個算術表示式中包含圓括弧 方括弧三種型別的括弧,編寫乙個程式用於判別表示式中括弧是否正確配對...
棧的應用 括號匹配
description 在實際程式設計中,我們經常會巢狀使用括號,如 如果括號太多,可能會出現括號不匹配的情況,比如 as 等。現希望你們編寫乙個程式,判斷輸入的一段語句中的括號是否匹配。必須使用棧實現這個功能。input 字串s,s是由 以及數字字母組成的字串。output 若括號使用規範且匹配,...