演算法題解整理

2021-10-07 16:17:43 字數 803 閱讀 8618

序號

型別解法1

解法2步驟

備註注意

1動態規劃

dp table的狀態轉移+確定 base case

變換目標(揹包問題,可拿出);第i個位置的值等於遍歷之前所有的dp值補上第i個位置到此位置的差值,取最大的值更新a[i]

子串行問題一般可用dp來解決

子串行的問題,一般用dp可以來解決:用乙個dp陣列儲存,value為截止到字串1的第i個,字串2的第j個為止,最長的、匹配的公共子串行

2二叉樹

遞迴遍歷每個結點(遍歷左右節點的順序,壓棧;直到全部出棧);驗證二叉樹;二叉搜尋樹;中序遍歷(dfs的遍歷順序不同)

引入上下邊界+dfs遞迴每個根節點

3dfs

4bfs

5並查集

使用成為"成為家庭"和"找父親"的方法解決

6字串

字串與整形的轉換;模式匹配(拼接函式:strcon(des,source));子字串(長度最長、字典序最小)

通過先引入當前最適合的變數,通過與當前最適合的變數相比,排除去一部分情況。

itoa(整形,字元陣列名,進製;tostring()將整型轉換為string型別;string 將字元陣列轉換為string型別7合併

遞迴8排序快排:將乙個數放到合適的位置,再對其左右兩邊遞迴操作。直到左邊界》=右邊界;9數學

排列組合:插位置放東西

10英文題

注意看題目

11多項式

用陣列儲存多項式的冪和係數,將相同冪的值相關起來

12金字塔型

找規律:累加次數的規律

題解 整理藥名

醫生在書寫藥品名的時候經常不注意大小寫,格式比較混亂。現要求你寫乙個程式將醫生書寫混亂的藥品名整理成統一規範的格式,即藥品名的第乙個字元如果是字母要大寫,其他字母小寫。如將 aspirin aspirin 整理成 aspirin 第一行乙個數字 n,表示有 n 個藥品名要整理,n 不超過 100。接...

A 演算法 整理

a 演算法 目錄2.總結 注 本文引自 概念 a 探路搜尋,是指在有障礙物的時候,尋找到達目的地最短路徑的搜尋。先介紹一些前置知識助於自己理解a 啟發式搜尋 這是對每乙個搜尋位置進行評估,得到好的位置,再從這個位置進行搜尋直到目標。這樣子好處是 剪枝,效率更高。啟發式搜尋的關鍵是如何進行估價。估價函...

用指令碼整理Leetcode題解

可以看出結構很混亂,所以 acool 想做乙個索引放在 readme 裡面。像這樣 按照題號排序,中間是題目名稱和題目的 leetcode 鏈結,最後是題解語言和鏈結。按照這樣的結構來手動一條一條整理,實在是太花時間了,所以 acool 寫了乙個索引生成 shell script 來整理。指令碼的 ...