This is only for self-checking, please move the template code to other blog posts
The mark + indicates that you have finished learning, the mark ? indicates that further study is required, the mark - indicates that there is a plan but has not started learning, and the mark * indicates that there is no plan to study at the moment
math
*BSGS
?FFT&NTT
*Lucas & extended Lucas
*Differential constraints
?Polynomial processing
- Gaussian elimination
- Linear basis
? Matrix fast exponentiation
- Cattleya number
+ Extended Euclidean
+ Mobius inversion
*Tolerance
- Stirling number
* Linear programming
*Chinese remainder theorem
Sieve
+Linear sieve
-Dujiao sieve
* Chau Ge sieve
computational geometry
?Convex hull & rotating jam (xuan2zhuan3qia3ke2)
*Half plane intersection
data structure
*CDQ divide and conquer
*Overall two points
- Team Mo
-LCT
+ST table
+ Union lookup
?Block list
?Doubly linked list
?Tree array
?Line segment tree & chairman tree
- virtual tree
- Left-biased tree (mergeable heap)
binary tree
+Splay
?Treap (rotate)
-Treap (no spin)
-scapegoat tree
-Size Balanced Tree
Graph theory & tree theory
?tarjan
- Divide and conquer
+ Bipartite graph matching
?Network flow
+ Minimum spanning tree
?Tree chain segmentation
+ tree multiplication
shortest path problem
+Floyd
+Dijkstra
+SPFA
*k short circuit problem
string
+ KMP
?Extended KMP
+AC automaton
? Palindromic automata
+manacher
? suffix array
? Suffix Automata
?RK
other
*bitset
+ high precision
DP
? shape pressure DP
*Slope optimization