題目描述:
給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
示例 1:
輸入: 「()」
輸出: true
示例 2:
輸入: 「(){}」
輸出: true
示例 3:
輸入: 「(]」
輸出: false
示例 4:
輸入: 「([)]」
輸出: false
示例 5:
輸入: 「」
輸出: true
class
solution
:def
isvalid
(self, s:
str)
->
bool:if
len(s)%2
==1:return
false
stack =
dict="
:"for char in s:
if char in
dict
:if stack:
top=stack.pop(
)if top!=
dict
[char]
:return
false
else
:return
false
else
:return
not stack
執行結果1:
參考程式2:
class
solution
:def
isvalid
(self, s:
str)
->
bool:if
len(s)%2
==1:return
false
dict='
:'result =
[none
]for i in s:
if i in
dict
anddict
[i]== result[-1
]:result.pop(
)else
:return
len(result)
==1
執行結果2:
參考程式3:
class
solution
:def
isvalid
(self, s:
str)
->
bool
: result =
if s =="":
return
true
iflen
(s)==
0or s[0]
in')'
'}'']'
:return
false
iflen
(s)%2==
1:return
false
for i in s:
if i in
'(''"
: temp =
"{"if i ==
"]":
temp =
"["if result[-1
]== temp:
result.pop(
)else
:return
false
if result:
return
false
else
:return
true
力扣 20 有效的括號
題目 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例1 輸入 輸出 true 示例2 輸入 輸出 true 示例3 輸入 輸出 false 示例4 輸入 輸出 false 示例5 輸入 輸出 ...
力扣 20 有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...
有效的括號(力扣 20)
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...