語法
C++基礎語法: C++學習筆記
Python基礎語法: Python學習筆記
窮舉
邊權只有0跟1: 01BFS
每種路徑求法: DFS
DFS加速: 剪枝
計算所有子集合的合: All sum of subset
資料結構(data structure)
區間求值: Segment Tree
求區間最值: Sparse Table
計算前綴合: BIT
二維前綴合: 二維前綴和
集合合併問題: Disjoint Set
用於優先對列: Heap
滑動窗口問題: 單調隊列
分成√塊: 分塊演算法
分塊延伸: 莫隊算法
區間第
區間第
尋找子字串: Suffix Array
區間不同數的個數: Range Distinct values queries
斜線求最小
BST平衡樹: Treap
圖
兩點最短路徑求法: Shortest Path
最少點圍成的區域包含所有點: convex hull
兩兩相配最大匹配數: 匈牙利演算法
求兩兩有路徑相通的圖: SCC
任兩點都相通: Eulerian Cycle
網路流問題: flow
兩條件必要有一條建成立問題: 2-SAT
樹
樹的遍歷: 前序 後序 中序 遍歷
一筆走完權重問題(最小生成數):MST
求最近共同祖先: LCA
數論
費馬小定理與歐拉定理:數論
求最大的平均值: 最大化平均值
數值太大卻要開陣列存時: 離散化
把元素對應到特定的元素: Hash Table
幾人一數淘汰,求倖存者問題: 約瑟夫問題
快速求出
求出費式數列極大值: 矩陣快速冪
大數相乘取模: 快速乘
求
最大公因數與最小公倍數: GCD&LCM
組合數
質數: Prime
DP
DP經典問題: DP
求最大連續元素和: MCS
求最長遞增子序列: lIS
求最長共同子序列: LCS
求最長回文子字串: LPS
矩陣鏈相乘: matrix chain
括號匹配數: N個括號的匹配數
其他
最常回文子字串: LPS
犯蠢紀錄: debug
日期轉換: 時間函數庫
github使用教學: Github push 使用教學
小技巧: