給定乙個只包括(
,)
,,
[
,]
的字串,判斷字串是否有效。
有效的字串需要滿足:
輸入:"()"
輸出:true
示例2:
輸入:"(){}"
輸出:true
示例3:
輸入:"(]"
輸出:false
示例4:
輸入:"([)]"
輸出:false
示例5:
輸入:""
輸出:true
演算法設計與分析:
class
solution
:def
isvalid
(self, s:
str)
->
bool
:# 使用字典來進行匹配
stk =
pair =":
"# 迴圈遍歷傳入的字串,如果是左括號就加入列表,右括號匹配不成功,返回false,否則將匹配的左括號出棧
for c in s:
if c in
"([":-
3}for c in s:
iflen
(stk)==0
:elif
dict
[c]+
dict
[stk[-1
]]==0
:del stk[-1
]else
:return
len(stk)
==0
leetcode 有效括號(20)
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 true 官方給出了不同的解答方式,在此處,我只進行1種方式的描...
LeetCode 有效的括號20
toc leetcode 20.有效的括號 傳送門 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false ...
LeetCode20有效括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true示例 2 輸入 輸出 true示例 3 輸入 輸出 false示例 4 輸入 輸出 false示例 5 輸入 輸出 tr...