每天一道演算法題

2021-10-08 23:24:46 字數 807 閱讀 7832

#1.給定乙個只包括 '(',')','','[',']' 的字串,判斷字串是否匹配。

* 有效字串需滿足:

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

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

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

思路:## 正確思路:

* 不需要考慮輸入內容是否合法,這只是做題,不是工程

* 定義乙個字典,後括號為鍵,前半部分為值

* 定義乙個元素儲存棧頂,注意這個設定,取棧頂的操作

* 用棧的思想,如果是字典裡的值,進入棧,否則,判斷棧頂元素是否和這個元素匹配若匹配就彈出,不匹配就報false

* 依次執行上兩步

class **(object):

def kuohaopipei(s):

stack =

maping = ':'

for c in s:

if c in maping:

# 從堆疊中彈出最上面的元素(如果它不是空的)否則,將偽值「#」賦給top_element變數

top_element = stack.pop() if stack else '#'

if maping[c] != top_element:

return false

else:

return not stack

if __name__ == '__main__':

s = input('給定只包括括號的字串,判斷字串是否匹配')

print(**.kuohaopipei(s))

每天一道演算法題

no.1 棧是特殊的線性表,它。a.對 b.錯答案 錯,它的插入和刪除都是在同一端進行的。no.2 n個葉子節點的滿二叉樹 除了葉子節點,每個節點都有兩個孩子 總共有多少個節點?a.2n 1 b.2n c.n 1 d.n答案 a 滿二叉樹我們講過了,度為0的節點比度為2的加點多乙個。滿二叉樹是特殊的...

每天一道演算法題

1 js計算某個字串出現的次數 j ascript計算乙個字串最多重複的字元及出現次數.var str zhaochucichuzuiduodezifu var o for var i 0,length str.length i length i else console.log o 輸出的是完整的...

每天一道演算法題(2018 11 25)

題目 給定乙個整數陣列和乙個目標值,找出陣列中和為目標值的兩個數 找出一組即可 示例 mums 2,3,5,6,7 target 10 nums 1 nums 4 3 7 10 返回 1,4 猛地一想,這不是很簡單麼,每次取兩個數,加起來看看是不是等於target就好了。具體地來說,就是遍歷陣列中的...