Leetcode 20 有效的括號

2021-10-25 06:39:14 字數 993 閱讀 7784

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

有效字串需滿足:

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

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

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

示例 1:

輸入: 「()」

輸出: true

示例 2:

輸入: 「(){}」

輸出: true

示例 3:

輸入: 「(]」

輸出: false

示例 4:

輸入: 「([)]」

輸出: false

示例 5:

輸入: 「」

輸出: true

建立乙個字典用於括號的配對。

對字串進行遍歷,當遇到乙個左括號時,會期望在後續的遍歷中,有乙個相同型別的右括號與其配對。由於後遇到的左括號要先閉合,因此我們可以先將這個左括號放入列表中。

當遇到乙個右括號時,就需要乙個相同型別的左括號與其配對。此時,可以取出列表中最後的左括號並判斷它們是否是為可以配對的括號。如果不可以配對,或者在列表中並沒有左括號,那麼字串為無效的。

class

solution

:def

isvalid

(self, s:

str)

->

bool:if

len(s)%2

!=0:return

false

dic =":

" li =

list()

for i in s:

if i in dic:

ifnot li or li[-1

]!= dic[i]

:return

false

li.pop(

)else

:return

not li

主要是在括號匹配時候的順序上有點折騰。

LeetCode20有效括號

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

Leetcode 20 有效括號

leetcode 20 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true pthon 列表 如 a a b 字典 如 dict not ...

leetcode 20 有效括號

怎麼減少if語句,判斷是否是某乙個值,將值存進map中,是否在map中,若在,則是 匹配用map 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出...