在python中堆疊和佇列可以用list列表來實現:
最後是我今天突然想到的,現在我感覺堆疊是一種概念一種工具,在不同的語言中可能有不同的叫法和實現方法,不一定在所有的語言中都叫stack。
在寫這道題的過程中還出現了乙個問題:
valueerror: invalid literal for int() with base 10:*** 出現這種錯誤的原因是我用強制資料轉換int()來轉換了字元,就會出現錯誤。python中沒有char只有str,但int()只能轉化由純數字組成的字串!!!!!
class solution:
def isvalid(self, s: str) -> bool:
stk=list()
hash_map=':'
for i in range(len(s)):
if s[i] not in hash_map: # s[i]不在hash_map中說明是左半邊的括號,左半邊的括號始終是沒有錯誤的。
else:
if not stk or hash_map[s[i]] != stk.pop():
return false
return not stk
本來自己寫的只超過了16-17%的**,哭了。 看到還可以用字典來設定,牛皮!!
class solution:
import re
def isvalid(self, s: str) -> bool:
stk=list()
for i in range(len(s)):
if s[i] == '(' or s[i] == ''):
stk.pop(-1)
else:
return false
if len(stk) == 0:
return true
return false
這是我最初自己寫的**,冗餘比較大,if判斷語句很多,low了不少。
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 輸入 輸出...