力扣的有效的括號解法(Python3)

2021-10-03 21:16:56 字數 2093 閱讀 4850

題目描述:

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

有效字串需滿足:

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

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

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

示例 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 輸入 輸...