20 有效的括號

2021-09-26 05:37:06 字數 912 閱讀 2526

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

有效字串需滿足:

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

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

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

示例 1:

輸入: "()"

輸出: true

示例 2:

輸入: "(){}"

輸出: true

示例 3:

輸入: "(]"

輸出: false

示例 4:

輸入: "([)]"

輸出: false

示例 5:

輸入: ""

輸出: true

【簡單】

【分析】遍歷s,將出現的左括號單獨拿出來,從第一次遇到右括號開始,與拿出來的左括號乙個乙個判斷是否匹配。判斷是否匹配的方法是通過設定比如"[「和」]"有相同的index,具體減code。

舉個栗子:s="",相對應地,解題過程模擬如下:

每次當遇到乙個左括號時,就將左括號都放入res中,res: ='",")"]

res=

for i in s:

if i in left:

if i in right:

if not res or res[-1]!=right.index(i): #第乙個括號是右括號,或者左右括號不匹配

return false

else:

res.pop()

return true if len(res)==0 else false

20 有效括號

1.題目描述 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。2.示例 輸入 輸出 true輸入 輸出 false3.思路 可以採用棧來解決,第一步 判斷棧是否空,為空則進乙個括號,若不為空,則判斷當前括號和棧頂元素是否匹配,不...

20 有效的括號

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

20 有效的括號

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