mind Mapping
algorithm
1 Complexity analysis
1.1 Time complexity
1.2 Space complexity
2 Basic algorithm ideas
2.1 Enumeration algorithm
2.2 Greedy algorithm
2.3 Dynamic programming
2.4 Divide and conquer algorithm
2.5 Backtracking algorithm
3 Sort
3.1 Bubble sort
3.2 Insert sort
3.3 Selection sort
3.4 Hill sorting
3.5 merge sort
3.6 Quick sort
3.7 Heap sort
3.8 Counting and sorting
3.9 Cardinality sorting
3.10 Bucket sorting
4 Search
4.1 Depth-first search
4.2 Breadth-first search
4.3 A * heuristic search
5 Find
5.1 Linear table lookup
5.2 Tree table lookup
5.3 Hash Table Lookup
6 String matching
6.1 Simplicity
6.2 KMP
6.3 Robin-Karp
6.4 Boyer-Moore
6.5 AC automaton
6.6 Trie
6.7 Suffix array
7 Mathematics
7.1 Number theory
7.2 Computational geometry
7.3 Probability analysis
7.4 Checking
7.5 Topology Network
7.6 Matrix operations
7.7 Linear programming
data structure
1 Linear table
1.1 Array
1.2 linked list
1.3 Stack
1.4 Queue
2 Hash table
Hash function
Conflict resolution
Dynamic expansion
bitmap
3 Tree
3.1 Tree structure
3.2 Binary tree
3.3 AVL tree
3.4 B + tree
3.5 Red Black Tree
3.6 Line segment tree
4 Figure
4.1 Storage of figures
4.2 Shortest path
4.3 Minimum spanning tree
4.4 Critical path
4.5 Topological sorting
4.6 Bipartite graph
4.7 Maximum flow