ACM skills table

Look like a (funny)

data structure

Stack

  1. Stack
  2. Monotonous stack

queue

  1. General queue
  2. Priority Queue / queue monotonous
  3. Circular queue
  4. Deque

List

  1. General list
  2. Circular list
  3. Doubly linked list
  4. Block list
  5. Cross List

Adjacency list / adjacency matrix

  1. Adjacency list
  2. The adjacent multi-table

Hash table (hash table)

  1. Hash Table
  2. String Hash

Binary Tree

  1. General binary tree
  2. Binary tree traversal
  • [] Preorder traversal of a binary tree
  • [] Binary tree traversal sequence
  • [] After traversing Binary Tree
  1. Huffman tree (Huffman tree) (optimal binary tree)
  2. Huffman coding (Huffman coding)
  3. Binary search tree / tree binary sort / binary search tree
  • [ ] Treap
  • [] Splay trees
  1. Threaded binary
  2. Balanced binary tree

stack

  1. Large / Small root stack (PQ)
  2. And can heap
  3. Heap left side

Segment tree

  1. One-dimensional segment tree
  2. Delayed mark
  3. Two-dimensional segment tree
  4. Interval merger
  5. Range of discrete / compression
  6. Scan line
  7. Segment tree sets of balanced tree
  8. Chairman of the tree / tree line may persist

Fenwick tree

  1. A one-dimensional array of tree
  • [] Single-point interval modified query +
  • [] Single point interval modified query +
  • [] Interval Interval modify query +
  1. Two-dimensional array of tree
  • [] Single-point interval modified query +
  • [] Single point interval modified query +
  • [] Interval Interval modify query +
  1. N-dimensional array of tree
  2. Reverse problem

String

  1. Times character marks skewer
  • [] Analyzing
  • [] Palindromic longest substring
    • [] Naive O (n3)
    • [] Diffusion center O (n2)
    • [] Dynamic programming O (n2)
    • [] Manacher algorithm (algorithm on horse) O (n)
  1. KMP algorithm
  2. Minimum representation
  3. Trie / Trie tree
  • [] Static achievements
  • [] Dynamic contribution
  • [] May be the Trie persistence
  1. Suffix array
  2. Suffix tree
  3. Suffix automata
  4. Aho-Corasick automaton / AC automata

Disjoint-set

  1. Disjoint-set
  2. Path compression
  3. Edge Weighted disjoint-set

Block

RMQ problem

  1. simple
  2. Segment tree
  3. ST table
  4. RMQ standard algorithm

Discretization

Red-black tree

Jump table

Graph Theory

search for

  1. Depth-first traversal / DFS
  • [] Depth-first traversal / DFS
  • [] The DFS sequence
  • [] Iterative deepening DFS (ID-DFS)
  • [] Two-way DFS
  1. Breadth-first traversal / BFS
  • [] Breadth-first traversal / BFS
  • [] Deque BFS
  • [] Priority Queue BFS
  • [] Multi-start BFS
  • [] Double BFS
  • [] Two-way BFS
  1. Pruning
  2. Topological sorting
  3. State compression
  4. A * algorithm
  5. IDA * algorithm
  6. Memory search

Strongly connected components

  1. Strongly connected components
  • [] Tarjan algorithm
  • [] Korasaju algorithm
  1. Bis communication component
  2. Condensing point and strongly connected components
  3. FIG cutting edge and the cutpoint
  4. 2-SAT problem
  5. Euler road problem
  • [] Eulerian paths
  • [] Euler
  1. Hamilton cycles

Minimum spanning tree

  1. Prim's algorithm
  2. Kruskal's algorithm (sparse graphs)
  3. Sollin algorithm
  4. The second smallest Spanning Tree
  • [] Prim algorithm
  • [] + LCA the Kruskal algorithm
  1. Directed minimum spanning tree
  2. K-spanning small
  3. The optimum percentage of spanning tree
  4. Minimum tree
  5. Minimum Spanning Tree bottleneck
  • [] Minimum Spanning Tree Bottleneck
  • [] Between each pair of nodes bottleneck minimum passage
  1. Minimum bottleneck road
  2. The minimum limit of the Spanning Tree
  3. Incremental minimum spanning tree
  4. Euclidean minimum spanning tree plane point
  5. Manhattan minimum spanning tree plane point
  6. Minimum balance Spanning Tree

Shortest Path

  1. Single-source shortest path
  • [] Directed acyclic graph of the shortest path

    • [] Topological sorting
  • [] Shortest Path nonnegative weights weighted graph

    • [] Dijkstra algorithm
    • [] The Dijkstra algorithm (optimization binary heap)
  • [] The shortest path containing negative weights weighted graph
    • [] Bellman-Ford Algorithm
    • [] SPFA algorithm
  1. Full source shortest path shortest
  • [] Floyd algorithm
  • [] Johnson algorithm
  1. Times shorter path
  2. The first short path k
  3. Differential restraint system
  4. The shortest path plane point (opt)
  5. Double standard limits the shortest path

ring

  1. Ring determination
  2. Loop negative determination
  • [] Bellman-Ford Algorithm
  • [] SPFA algorithm

Network flow

  1. The maximum flow problem
  • [] Augmenting path algorithm

    • [] Augmenting path Theorem
    • [] Ford-Fulkerson algorithm
    • [] Ford-Fulkerson algorithm superimposed
    • [] Edmond-Karp algorithm
    • [] Dinic algorithm
    • [] ISAP Algorithm / shortest augmenting path algorithm
  • [] Pre-flow Boosting

  1. Minimum percentage maximum flow theorem
  • [] Multi-source multiple sinks
  • [] No feasible flow sinks passive network has a capacity lower bound
  • [] With a lower bound of the capacity of the network st maximum / minimum flow
  • [] Nodes have limited network flow
  1. Minimum-cost flow problem
  • [] Capacity is not fixed minimum cost flow st
  • [] Containing negative charges of minimum cost maximum flow
  • [] Minimum flow is proportional to the square of the cost and traffic

Bipartite graph matching

  1. FIG determination bipartite
  2. Bipartite graph maximum matching
  • [] Hungarian algorithm
  1. Konig Theorem
  2. Minimum Vertex Cover bipartite FIG.
  • [] Hungarian algorithm
  1. FIG bipartite minimum edge covering
  2. Bipartite graph best perfect match
  • [] Kuhn-Munkres algorithm
  1. FIG exact match bipartite
  • [] Kuhn-Munkres algorithm
  1. FIG multiple match bipartite
  2. Maximum Weighted bipartite graph matching
  • [] Kuhn-Munkres algorithm
  1. Bipartite graph maximum independent set
  2. Maximum closure subgraph
  3. The maximum density subgraph
  4. Equitable distribution
  5. Interval k coverage problem
  6. Covering the smallest path acyclic graph (DAG) of
  • [] The DAG minimum disjoint paths covered
  • [] DAG may intersect the smallest path coverage

The diameter of the tree

  1. DP tree
  2. BFS

Tree ring

Recent Common Ancestor

  1. Up labeling
  2. Doubling the tree
  3. Tarjan algorithm
  4. LCA turn RMQ

Chord chart

Stable marriage problem

Dynamic Programming

Quadrilateral inequality theory

Incomplete state record

  1. Frogger problem
  2. DP range

Knapsack problem

  1. 0-1 backpack
  2. Full backpack
  3. Packet backpack
  4. Multiple backpack
  5. Determination of the knapsack problem
  6. Knapsack problem with the affiliation
  7. + -1 knapsack problem
  8. Dual backpack seek the optimal value
  9. Construction Triangles
  10. Bring lower bound limit knapsack problem (backpack 012)

The dynamic linear programming problem

  1. Jenga problem
  2. Duel (Entscheidungsproblem)
  3. The biggest problem polygon round
  4. Count the number of word problems
  5. Chessboard
  6. Scheduling problems
  7. Approximations of the minimum (closest to a number / sum of two numbers and the like to obtain a particular number ratio of two numbers, etc.)
  8. Box elimination game (a continuous interval can eliminate seek maximum efficiency)
  9. Resource allocation
  10. Digital Triangles
  11. Pretty print
  12. Question and answer post office structure
  13. The highest building problem
  14. Two in a row and the largest
  15. 2 and power problems
  16. The maximum number of segment piece M and N
  17. Cross the maximum number of questions

Determining issues DP (such as divisible determination, determines reachability)

  1. DP mold problems K
  2. Special problems mold K, the number of seeking maximum (minimum) modulo K,
  3. Convert the number of problem

Monotonicity Dynamic Programming

  1. 1-SUM problem
  2. 2-SUM problem
  3. Sequence into question (monotone queue optimization)

Problems split (split polygon / gravel combined / split circle / product of the maximum)

  1. Triangular convex polygon dissection in
  2. The biggest problem the product
  3. Game polygon (a polygon edge operator, the right vertex value)
  4. The combined stone (N ^ 3 / N ^ 2 / NLogN various optimization)

Greedy dynamic programming

  1. Optimal loading problem
  2. Part of the knapsack problem
  3. Boat problems
  4. Greedy strategy
  5. Dual Johnson algorithm scheduling problem

DP range

Digital DP

DP status

  1. Cowboy shooting problems (Game category)
  2. Hamiltonian path state dp
  3. Two point scale balance
  4. A two closest to the graph of FIG.

DP tree

  1. Perfect server problems (each node has three states)
  2. Shou Palace chubby problem
  3. Network charges
  4. Tree roaming
  5. Tree Game
  6. Maximum Independent Set Problem tree
  7. The biggest problem tree balance
  8. Smallest ring configuration tree

mathematics

Number Theory

  1. Multiplicative function
  2. Pell's equation
  3. Congruence
  • [] Congruence theorems
  • [] Fermat's Little Theorem
  • [] Euler's theorem
  • [] Euler given in Corollary
  • [] Extended Euclidean Algorithm
  • [] Chinese remainder theorem
  • [] Multiplicative inverse
  1. Prime numbers
  • [] Euclid's theorem
  • [] Simple method
  • [] Screening
    • [] Eratosthenes screening
    • [] Linear sieve
  • [] Miller Test Method
  1. Submultiple / factor / factor
  2. Continued fraction approximation
  3. Cyclic group generator
  4. Hex digits

matrix

  1. Matrix Multiplication
  2. Fast power matrix
  3. Matrix transpose

Combinatorial Mathematics

  1. Permutations
  2. Inclusion-exclusion principle
  3. Recurrence relations and generating functions
  4. Lucas Theorem
  5. Polya counting
  6. N Queen configured Solutions
  7. Magic Square
  8. Catalan series
  9. Stirling number of columns
  10. Feibolaqi number
  11. Harmonic number
  12. Continued fraction
  13. MoBius
  14. Partial order theory

Computational Geometry

  1. Basic official
  2. Segments
  3. Polygon
  4. triangle
  5. circle
  6. ball
  7. You can create a view
  8. On the heel point
  9. Classic problem

Calculation

  1. dichotomy
  2. Iterative method
  3. Rule of Thirds
  4. Fast power
  5. Solution of linear equations
  6. Solutions of linear equations mold
  7. Definite Integration
  8. Polynomial rooting
  9. Periodic equation
  10. Linear Programming
  11. Fast Fourier Transform
  12. Random algorithm
  13. 0/1 fractional programming
  14. Iterative approximation
  15. Matrix Method

Probability

  1. Full probability formula
  2. Mathematical Expectation

game theory

  1. SG function
  2. Minimax process
  3. Nim problem

Guess you like

Origin www.cnblogs.com/CADCADCAD/p/11361430.html