Leetcode 有效的括號(stack)

2021-10-25 04:23:41 字數 1169 閱讀 8267

20. 有效的括號

難度簡單1918收藏分享切換為英文接收動態反饋

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

有效字串需滿足:

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

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

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

示例 1:

輸入: "()"

輸出: true

示例 2:

輸入: "(){}"

輸出: true

示例 3:

輸入: "(]"

輸出: false

示例 4:

輸入: "([)]"

輸出: false

示例 5:

輸入: ""

輸出: true

解答:
//堆疊

class solution 括號將所有操作包含起來

,則返回錯誤

return false;

if(stk.top() == '(')//棧頂前置括號

out = ')';

if(stk.top() == '';

if(stk.top() == '[')

out = ']';

if(out != s[i])

return false;

stk.pop(); //彈出棧頂的元素} }

if(stk.empty())//如果棧為空,則返回正確

return true;

else

return false;

}};

使用堆疊壓入棧頂以儲存前置括號,彈出棧頂與後置括號對比。

leetcode 有效的括號

題目 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 1.左括號必須用相同型別的右括號閉合。2.左括號必須以正確的順序閉合。示例1 輸入 輸出 true示例 2 輸入 輸出 true示例 3 輸入 輸出 false示例 4 輸入 輸出 false示例 5 輸入 輸出 true includ...

leetcode 有效的括號

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true示例 2 輸入 輸出 true示例 3 輸入 輸出 false示例 4 輸入 輸出 false示例 5 輸入 輸出 tr...

LeetCode 有效的括號

給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 本題需使用棧來解決,即遍歷字串,遇到左括號...