利用棧判斷字串括號是否匹配

2022-05-13 07:37:27 字數 1194 閱讀 3495

任務描述

本關任務:基於棧stack資料結構判斷字串中的括號是否匹配,字串中僅包含如下字元:()[]

相關知識

為了完成本關任務,你需要掌握:1.如何建立乙個棧,2.入棧、出棧操作。 演算法思想: 輸入符號串str; 初始化棧s for(i=0; str[i]!=′\0′; i++) /掃瞄括號串/

}}若棧不空,則匹配不成功,否則匹配成功

程式設計要求

本關的程式設計任務是補全右側**,實現對輸入的括號串進行匹配判斷, 若匹配成功輸出yes,否則輸出no

輸入輸出說明

輸入為單個測試資料,輸入長度不超過100的由()[]等符號組成的字串,判斷該字串中各種括號是否匹配,若匹配成功輸出yes,否則輸出no

以下是平台的測試樣例:

樣例一:

測試輸入:預期輸出:yes

樣例二:

測試輸入:[(])預期輸出:no

//

括號匹配

#include #include

#include

using

namespace

std;

int match(char

str);

intmain()

int match(char

str)

else

if(mystack.empty())

else

if(c==')'

)else

}else

if(c==']'

)else

}else

if(c=='}'

)else}}

if(mystack.empty())return1;

return0;

/********** end *********

*/}

利用棧判斷括號是否匹配

輸入格式如下 3 輸出格式如下 yes no yes 演算法描述 利用棧來判斷 注意出棧時,考慮棧是否為空 最後匹配的結果應該是棧為空 1 從左到右進行掃瞄字元 2 若為左括號 else public boolean isbalanced string str elseelseelse end fo...

利用棧的特性判斷括號是否匹配

括號匹配的檢驗 假設輸入字串中有三種括號,大括號 中括號 小括號,其巢狀的方式是隨意的。即類似的都為正確格式。檢驗括號是否匹配的方法可用 期待的急迫程度 來解決。例如下面的括號串 當計算機接受第乙個括號時,它期待著第六個括號與它見面,然而我們輸入的卻是第二個括號,同理,一直到第三個括號,3期待著4與...

php判斷字串中前後括號是否匹配

思路 將字串內的括號分為前括號和後括號,匹配到前括號則直接儲存到陣列中,匹配到後括號,則跟之前儲存的前括號中最後乙個括號進行對比,如果匹配,則刪除前括號中的最後乙個匹配的括號,如果不匹配,則報錯。header content type text html charset utf 8 str 434 ...