題目
給定乙個只包括 『(』,』)』,』』,』[』,』]』 的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
示例 1:
輸入: 「()」
輸出: true
示例 2:
輸入: 「(){}」
輸出: true
示例 3:
輸入: 「(]」
輸出: false
示例 4:
輸入: 「([)]」
輸出: false
示例 5:
輸入: 「」
輸出: true
**
class solution:
def isvalid(self, s: str) -> bool:
dict=":"
stack=
for i in range(len(s)):
if(s[i] in dict.keys()):
if(stack):
if(stack[-1]==dict[s[i]]):
stack.pop()
else:
return false
else:
return false
else:
if(stack):
return false;
else:
return true;
執行結果
思路定義乙個字典dict用來將左右括號配對,定義乙個空的stack。遍歷s,若出現乙個右括號,先判斷stack是否為空,如果非空則判斷棧頂的是否為相匹配的左括號,是則出棧,否則返回false;如果stack為空,就返回false。遇到左括號就入棧。顯然,有效的括號一定保證最終棧為空。
GO程式設計(打卡) Task13 併發程式設計
目錄參考 併發在圖中的解釋是兩隊人排隊接咖啡,兩隊切換。並行是兩個咖啡機,兩隊人同時接咖啡 goroutine啟動goroutine只要在前面呼叫函式前加go關鍵字即可 乙個goroutine必定對應乙個函式,可以建立多個goroutine執行相同的函式 通過runtime.gomaxprocs n...
Day15 Task20 有效的括號
題目描述 20.有效的括號 給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例1 輸入 輸出 true 示例2輸入 輸出 true 示例3輸入 輸出 false 示例4輸入 輸出 false 示例...
task0 最小棧 和task1(有效括號)
2.letecode2 堆疊和數列 stack and queue 2.1概念 2.1.1.棧都是一種資料項按序排列的資料結構,只能在一端 稱為棧頂 top 對資料項進行插入和刪除。棧,先進後出。2.1.2佇列是一種特殊的線性表,只允許在表的頭部 front處 進行刪除操作,在表的尾部 rear處 ...