The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

ABCDEFGHIJKLMNOP
1
Bundle NameIntroAlgorithms 1Math 1Graph 1 (Basics)DP 1 (Basics)Data Structures 1Graph 2 (Standart)Data Structures 2Data Structures 3DP 2 (Structures, Bits)Graph 3 (Connectivity)Math 3 (Geometry)Graph 5 (Trees)Algorithms 5 (Strings)Algorithms 6 (String)
2
Bundle ContentCommand LineLinear SearchNumber Theory:

- Primes
-- Sieve
- Modular Arithmetic
- Factorization (Naive)
- GCD + Extended GCD + LCM
- Bezout's Identity
Graphs:

- Basic Terms (Directed, Undirected, Weighted, Unweighted, Loops, Parallel Edges, Simple Graph, Multigraphs, Bipartite, Planar, Topological Sort)
- Edge List
- Bipartite Graphs
- DAG
- Grid
- Union Find
Greedy:

- Coin problem
- Scheduling
- Minimizing sums
Data Structures:

- Basic:
-- Stack
-- Queue
-- Deque

-- Prefix Sum
-- SQRT Decomposition
-- Fenwick Tree(Binary Indexed Tree):
--- Point Update + Range Query
--- Range Update + Point Query
-- Segment Tree(Without Lazy)
-- RMQ
-- Sparse Table
Graph Theory:

- Shortest Path
- Negative Cycle Detection
- Minimum Spanning Tree
- Topological Sort
- Eularian Paths / Graphs
-- Hierholzer's Algorithm
- Warshall's Algorithm
Self-balancing Trees:

- Treap (with code examples)
- AVL Tree(just definition and advantages)
- Red Black Tree(just definition, stl map and sets can be mentioned)
Segment Tree With Lazy PropagationBitmask DPStrong ConnectivityConvex Hull (Theory, and algorithms)Union Find TreeString-matching automata + KMPHeavy-Light Decomposition
3
ArraysBinary SearchCombinatorics:

- Permutations
- Combinations(With example code)
- Factorials
- Binomial Coefficients
Trees:

- Basic Terms (Rooted, Unrooted, Spanning Trees)
Dynamic Programming:

- Coin Problem
- Knapsack
- Memoization Term
- LIS O(N^2)
Graph Algos On Grids(Code Examples like BFS, DFS)
LCA:

- Jump Pointers/Binary Lifting
- Level Ancestors
Binary Search on Segment Tree
DP On Rooted Trees
BiconnectivitySubtree Query <-> Point Query <-> Range QueryString Hashing
4
FunctionsBisection
Fast Exponentiation
Tree Traversals (Preorder, Inorder, Postorder, Levelorder, Reversed Versions, Etc.)
* Euler Characteristic(Optional)
sqrt decomposition offline queries (a.k.a. "Mo's algorithm")
DP On DAGsBridges, Articulation PointsClosest PairStructures built on the preorder traversal of a treeRabin Karp2D Segment trees
5
StringsTernary SearchBinary Heap
Treap with lazy propagation
Digit DPConnected ComponentsCentroid DecompositionSuffix ArrayskD tree
6
Standart Libraries (C++, Python)
Divide and Conquer as a Term
Priority QueueTrie
Path Counting using Matrix Exponentiation
Cycle FindingLCP ArrayConvex Hull Trick
7
Recursion (In Mathematics And Programming)Sorting (Insertion, Merge, Quick, Counting, Radix)Heap Sort
Tree Child-Sibling notation DP
Exponentiation Via Cycle FindingPoint In PolygonTree-rerooting DP
8
EnumerationQuick SelectBinary Search Tree (BST)Max FlowPolygon AreaUnrooted Tree DP
9
Brute-forceSweep Line
10
Pointers and ReferencesCoordinate Compression
11
Structs and ClassesLine-line Intersection
12
Complexities (Time + Memory)
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100