有效的括號

2021-09-29 06:16:49 字數 1214 閱讀 4801

題目

給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。

有效字串需滿足:

左括號必須用相同型別的右括號閉合。

左括號必須以正確的順序閉合。

注意空字串可被認為是有效字串。

例項1:

輸入: 「()」

輸出: true

例項2:

輸入: 「(){}」

輸出: true

例項3:

輸入: 「(]」

輸出: false

例項4:

輸入: 「([)]」

輸出: false

這題我們用棧的先進後出的思想來解決

遍歷字串,遇到左括號就入棧

遇到左括號,放入棧,遇到右括號的話就取出棧頂元素和其進行比較,看是不是配對

比較完再向後遍歷,遇到左括號還是入棧,遇到右括號還是出棧進行比較。

如果字串遍歷完了,同時棧也為空,這就是匹配的情況

具體實現

class

solution

if(stack.

isempty()

)//如果走到這一步,說明遇到右括號

character top = stack.

pop();

if(top ==

'('&& c ==

')')

if(top ==

'['&& c ==

']')

if(top =='')

//走到這一步說明沒有相等

return

false;}

if(stack.

isempty()

)return

false;}

}

有效的括號

題目描述 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。解題思路 坦白來講這道題真的沒什麼思路,掉的坑也比較多,因為審題不認真,最後的一句話,注意空字串可被認為是有效字串。被吃掉了 最後提交的 執...

有效的括號

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。多組資料 每組是乙個由 組成的括號序列 每組字串長度不超過50。如果有效輸出true,否則輸出false。true true false false ...

有效的括號

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。多組資料 每組是乙個由 組成的括號序列 每組字串長度不超過50。如果有效輸出true,否則輸出false。true true false false ...