Essential knowledge points for ACM training

Graph Theory

Four algorithms for shortest paths ( floyd , dijkstra , bellman (can calculate negative weights), spfa (bellman for queue optimization) )

Two algorithms for minimum spanning tree ( Kruskal, Prim )

Classical problems on trees (minimum dominating set, maximum independent set, minimum covering set, longest path, etc.)

Bipartite graph matching (Hungary, KM)

topological sort

Connected graphs (strongly connected, weakly connected, reconnected, single-term connected, and set search)

network flow

2-SAT


dynamic programming

To learn recursive implementation and memory search implementation

state compression

digital dp

Backpack/greedy (nine backpacks)

Slope optimization

plug dp

FFT



string

AC automaton

km²

suffix array

dictionary tree

LCP,LIS,LCS
RMQ


Number Theory

Extended Euclidean (solving equations, finding inverses)

fast exponentiation (matrix fast exponentiation)

Rapid format prime number

Hexadecimal conversion (problems that are not easy to handle in decimal are converted to binary, etc.)

Euler function

Gaussian elimination

Stirling formula, Stirling number (the two are different, the focus of these years)

Games and Probability Theory



Combinatorial Mathematics

Permutation group (Polya acceleration)

Catalan

Inclusion and exclusion principle



Data structure (excluding tree, graph, search and sorting) + STL

Linked list (List)

stack

queue, priority queue

set

map

vector




geometry

Various basic geometric operations

Convex hull

half plane intersection

closest point pair, farthest point pair

Simulated Annealing

circle and ball problem




search

Breadth first (one-way, two-way)

depth first

Priority with the right (A*)

binary search



Tree

Common problems with trees (binary trees, etc.)

Frequently Asked Questions about the Forest

tree array

max heap, min heap

segment tree

LCA

ordering of trees



sort

Bubble sort (stable), insertion sort (stable), insertion sort (unstable)

Quick Sort (unstable), Merge Sort (stable), Heap Sort (unstable), Hill Sort (unstable)

Counting sort (stable), bucket sort (stable), radix sort (stable)







Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325524570&siteId=291194637