1. 題目
2.題目分析與思路
3.**
給定乙個只包括 '(',')','','[',']' 的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
這道題是簡單題,所以使用棧的思想進行括號匹配就可以,要讓**變得簡單,可以使用字典,使得條件判斷變得簡潔。
classsolution:
def isvalid(self, s: str) ->bool:
stack = ['1'
] dic = '}
dic =dict(zip(dic.values(),dic.keys()))
for i in
s:
if i in
dic:
if stack.pop() !=dic[i]:
return
false
continue
return len(stack) == 1
LeetCode第20題,有效的括號
題目 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 解題思想 模仿棧的操作,遇到左括號入棧,遇到右括號檢測棧頂元素是否與該右括號匹...
LeetCode第20題 有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...
LeetCode第20題 有效的括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。思路 時間複雜度o n 將左括號放入棧中,如果是右括號,判斷當前棧頂元素是否和當前有括號型別一致。每有乙個右括號與棧頂左括號匹配,就將棧頂左括號彈出。...