Algorithm Classification and collection

Source: Internet
Author: User
Tags greatest common divisor

All ACM algorithms

Data
    • Stacks, queues, linked lists
    • Hash table, hash array
    • Heap, Priority queue
      Dual-ended queues
      Can and Heap
      Left bias Heap
    • Binary search Tree
      Treap
      Stretching tree
    • and check Set
      Collection Count Issues
      The recognition of the dichotomy graph
    • Balanced two-pronged tree
    • Binary sort Tree
    • Segment Tree
      One-dimensional line segment tree
      Two-dimensional line segment tree
    • Tree-like array
      One-dimensional tree-like array
      n-dimensional tree-like array
    • Dictionary Tree
    • suffix array, suffix tree
    • Block Linked list
    • Huffman Tree
    • Barrels, jumping tables
    • Trie tree (static achievements, dynamic achievements)
    • AC Automatic Machine
    • LCA and RMQ Issues
    • KMP algorithm
Graph theory

    • breadth-first traversal
      depth first traverse
      topological sort
      Cut edge cut point
      strong connectivity component
      tarjan algorithm
      dual connected components
      strong connected branch and its indent
      cut and cut point of the graph
      min cut model, network Flow protocol
      2-sat problem
      Euler loop
      Hamiltonian loop
    • minimum spanning tree
      prim algorithm
      kruskal algorithm (sparse graph)
      sollin algorithm
      sub-niche into a tree
      K small spanning tree
      Optimal scale spanning tree
      minimum tree figure
      minimum limit spanning tree
      Euclidean minimum spanning tree
      Manhattan minimum spanning tree
      min-balance spanning tree
    • Shortest path
      topological sort with the shortest path to a non-circular graph
      Span style= "font-size:16px" > The shortest path->dijkstra algorithm for weighted graphs with nonnegative weights (can be optimized with two fork heap)

      Shortest path->SPFA algorithm for weighted graphs with negative weights


      full-source short-circuit Johnson algorithm
      short path
      K short path
      differential constraint system
      Shortest path to planar pairs (optimization)
      double standard limit shortest path
    • Max stream
      augmented path->ford-fulkerson algorithm
      pre-push stream
      dinic algorithm
      maximum flow with upper and lower bounds
      node restricted network flow


      ford-fulkerson superposition algorithm
    • The
      Hungary algorithm
      Minimum point Overlay
      Minimum path Overlay
      Maximum independent set problem
      An optimal complete matching kuhn-munkras algorithm for two-fractal graphs
      No weighted binary matching: Hungarian algorithm
      Weighted binary matching: km algorithm
      Maximum cardinality matching for general graphs
      The weighted matching problem of general graphs
    • Topological sorting
    • Chord Chart
    • Stable marital problems
search
    • wide search status optimization
      using m-binary number storage status Convert to string hash table weight
      bitwise compressed storage status
      bidirectional wide search
      a* algorithm
    • deep search optimization
      bit operations
      pruning
      Span style= "font-size:16px" > function parameters as few as possible
      layers are not too large
      bidirectional search or rotate search
      ida* algorithm
    • memory search
Dynamic planning
    • The theory of quadrilateral inequalities
    • Incomplete status record
      Frog Crossing the river problem
      Using Interval DP
    • Knapsack problem
      0-1 Backpack, Classic questions
      Infinity Backpack, Classic question
      The question of the judgement knapsack
      Knapsack problem with affiliated relationship
      +-1 knapsack problem
      Double Backpack for optimal value
      Structure Triangle problem
      Knapsack problem with upper bound limit (012 backpack)
    • linear dynamic programming problems
      Bricks game issues
      Duel (determinant problem)
      The largest polygon problem of the circle
      count the number of words
      Checkerboard split
      Scheduling issues
      minimum approximation problem (find out the ratio of two to the sum of a certain number/two number and so on)
      Block game (a range can be eliminated for maximum benefit)
      Resource allocation problem
      Digital triangle problem
      nice print
      Post Office questions and structuring answers
      tallest bricks problem
      two consecutive and maximum
      2 powers and problems
      n the maximum number of M pieces and
      crossover max problem
    • DP (e.g., Division of Judgment, determination of accessibility, etc.) of the determinant problem
      DP for modulo k problem
      Special modulo k problem, the number of maximum (minimum) modulus k is obtained.
      Transform number problem
    • Dynamic programming of monotonic optimization
      1-sum problems
      2-sum problems
      Sequence partitioning problem (monotonic queue optimization)
    • Split problem (polygon split/stone merge/Circle split/Product max)
      Triangulation problem of convex polygon
      The biggest problem of product
      Polygon Game (operator on polygon Edge, vertex right value)
      Stone Merging (N^3/n^2/nlogn various optimizations)
    • Greedy dynamic planning
      Optimal loading problem
      Partial knapsack problem
      Boat problems
      Greedy strategy
      Johnson algorithm for two-machine scheduling problem
    • Status DP
      Cowboy Shooting problem (game class)
      State DP of the Hamiltonian path
      Balance problem of two-pivot balance
      The nearest two-part diagram of a forward graph
    • Tree-Type DP
      Perfect server problem (3 states per node)
      Little fat, keep the palace.
      Network charge issue
      Roaming problems in Trees
      The game on the tree
      The maximum independent set problem of a tree
      The maximum equilibrium value problem of a tree
      The minimum ring of the construction tree

Mathematical

Arithmetical
    • China remainder theorem
    • Euler function
    • Euclidean theorem
    • Euclid gcd (greatest common divisor)
    • expand Euclid
    • large number decomposition and prime determination
    • Pell equation
    • congruence theorem (large number of remainder)
    • prime test

      10 million: Miller test method
    • continuous fraction approximation
    • factorization
    • loop swarm generation element
    • Prime and division of integers
combinatorial math
    • permutation combination
    • tolerant principle
    • recursive relationship and generation function
    • polya notation
      polya count formula
      burnside theorem
    • n Queen tectonic solution
    • magic square construction
    • catalan number
    • stirling number
    • Fibonacci number
    • harmonic number
    • even fractions
    • mobius inversion
    • partial order relationship theory
    • addition principle and multiplication principle
Calculate geometry
    • Basic formula
      Fork Multiply
      Point multiplication
      Area, perimeter, volume formula for common shapes
      discretization of coordinates
    • Segment
      Determine if two segments (line, segment) intersect
      Finding the intersection of two segments
    • Polygon
      Determine convex polygons, vertices are given clockwise or counterclockwise, (not) allow adjacent edges to collinear
      Points are in convex polygons or polygon edges, vertices are given clockwise or counterclockwise
      Points are within a convex polygon, vertices are given clockwise or counterclockwise, and return 0 on the polygon edge
      Points are within a freeform polygon, and vertices are given clockwise or counterclockwise
      The line segment is within the freeform, the vertex is given clockwise or counterclockwise, and the boundary intersects with the border returns 1
      Polygon Center of gravity
      Polygon cutting (half-plane intersection)
      Scan line algorithm
      The core of the polygon
    • Triangle
      Heart
      Circumcenter
      Focus
      Vertical Heart
      Fermat Point
    • Round
      Intersection of lines and circles, including tangency
      Intersection of segments and circles, including endpoints and tangency
      Intersecting circles, including tangency
      Calculates the nearest point on a circle, such as P coincident with the center, and returns p itself
      Calculates the intersection of a line and a circle, guaranteeing the intersection of a line and a circle
      Calculates the intersection of a segment and a circle using this function to determine whether a point is on a line segment
      Calculates the intersection of a circle and a circle, ensuring that the circle has an intersection with the circle and the center is not coincident
      Calculate the inner and outer Gongsche of two circles
      To calculate the tangent point of a segment to a circle
      Point Set minimum Circle overlay
    • Building a visual image
    • To heel point
    • Classic Questions
      Flat Convex bag
      Three-dimensional convex bag
      Delaunay split/voronoi diagram
Calculation method
    • Two-part method
      The dichotomy method for solving the related knowledge of monotone function
      Calculation using matrix acceleration
    • Iterative method
    • Three-part method
    • Solving systems of linear equations
      Lup decomposition
      Gaussian elimination element
    • CHENMO Linear Systems
    • Definite integral calculation
    • Polynomial seeking Root
    • Periodic equations
    • Linear programming
    • Fast Fourier transform
    • Stochastic algorithm
    • 0/1 Fractional Planning
    • Solving extremum of single-peak (valley) by three-part method
    • Iterative approximation
    • Matrix method
Game theory
    • Maximum minimum process
    • Nim question
the necessary knowledge reserves

* Advanced mathematics, Discrete mathematics.
* Some basic algorithms and data structures
(Queues, stacks, trees, graphs, and check sets, heaps,Dfs、BFS, shortest path, minimum spanning tree,
Topology sequencing, dynamic planning, greed, search,KmpHashTrie, AC automaton, fast power, inverse element, Fermat
Theorem, Euler function, prime number screening, decomposition factorization )
Generally this process takes a long time, recommended Vjudge on the kuangbin take you to fly the topic.
* Some advanced algorithms and complex data structures (tree array segment tree balance tree suffix array two-part picture
Distribution network flow cost flow cut Point Bridge strong unicom recent public ancestor four DP ( digital dp interval DP- like pressure
DP probability DP) game theory SG function)

Algorithm Classification Collection

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.