Skip to content

aaronhma/algorithms

Repository files navigation

Algorithm Notes

@aaronhma/algorithms - High Quality Notes for CP

  • Most pages published after 3/31/21 requires the MathJax for GitHub extension to view MathJax blocks.

Algorithms Image


Contents


Name (Content) C++ Python Editorials
0-1 BFS C++ cp-algo
A* (a-star) C++
Bellman Ford C++ cp-algo
Breadth First Search (BFS) List, Vector cp-algo
Cycle Negative Weight cp-algo
Depth First Search (DFS) DFS, Connected Comp, Max Island cp-algo
D´Esopo-Pape C++ cp-algo
Dial C++ cp-algo
Dijkstra C++ cp-algo 1, cp-algo 2, techie delight
Eulerian cp-algo
Flood Fill C++ 1
Floyd Warshall C++ cp-algo, Techie Delight
Graph Utilities Adj List, Adj Matrix, Weighted Adj List
Lowest Common Ancestor (LCA) cp-algo
LCA - Binary Lifting C++ cp-algo
Lee C++ Techie Delight
Multi Source BFS C++
Spinning Trees
Spinning Trees - Kruskal C++ cp-algo, Techie Delight
Kirchhoff Theorem: # of spinning trees C++ cp-algo
Spinning Trees - Prim C++ cp-algo

Name (Content) C++ Python Editorials
String Hashing C++ cp-algo

@TODO: Aaron

Name (Content) C++ Python Editorials
cp-algo

Name (Content) C++ Python Editorials
Bubble Sort C++ 1
Bucket Sort C++
Counting Sort C++
Heap Sort C++ 1
Insertion Sort C++ 1
Merge Sort C++ 1
★★★ Quick Sort C++ 1
★☆☆ Radix Sort C++
Selection Sort C++ 1, 2
Shell Sort C++
Topological Sort w DFS, Kahn's Algorithm (w BFS) cp-algo
Tree Sort C++

Name (Content) C++ Features Editorials
★★★ Knuth-Morris-Pratt (KMP) C++ cp-algo
Main-Lorentz Algorithm (Finding repetitions) C++ cp-algo
★★★ Manacher's Algorithm C++ Finding all sub-palindromes in O(N) cp-algo
★★★ Rabin Karp C++ cp-algo
★★★ Z Algorithm C++ cp-algo
String Problems C++ Python Editorials
Spy String C++

General Techniques (String, Number, etc) C++ Python Editorials
Longest Increasing Subsequence C++ Tech Delight
Permutations Heap's Algorithm wiki, Geeks For Geeks

Name (Content) C++ Python Editorials
Array C++
Bitset
Deque
Linked List C++
Matrix Max Square, Max Submatrix, Range Query
Priority Queue C++
Queue C++
Sparse Table C++ cp-algo
Stack C++
Name (Content) C++ Python Editorials
Disjoint Set C++ cp-algo, Techie Delight
Hash Map C++
Heap C++
LRU Cache C++
Map C++
Multi Set C++
Pair
Policy Based Data Structure
Set C++
Sqrt Decomposition C++
Trie C++
Tuple C++
Unordered Map C++
Unordered Set C++

Name (Content) C++ Python Editorials
AVL Tree C++
B Tree C++
Binary Search Tree C++
Binary Tree C++
Cartesian Tree (Treap) C++ cp-algo
Fenwick Tree Fenwick Tree Max, Fenwick Tree Min, Fenwick Tree Sum cp-algo
N-ary Tree C++
Segment Tree C++ cp-algo
Sqrt Tree C++ cp-algo
Suffix Tree C++
Tree C++
Tree Traversals (Inorder) C++ 1
Tree Traversals (Preorder) C++ 1
Tree Traversals (Postorder) C++ 1

Name (Content) C++ Python Editorials
C++

Name (Content) C++ Python Editorials

Name (Content) C++ Python Editorials

Name (Content) C++ Python Editorials

@TODO: Aaron - GCD, inverse of the number using extended euler's algorithm, fast power, prime number, Modular Exponentiation, Sieve of Eratosthenes, Fermat’s theorem, Miller Rabin

Name (Content) C++ Python Editorials

Name (Content) C++ Python Editorials
Efficiency - -
Kadane Algorithm (Maximum Sum Subarray Problem) 1
Floyd Cycle Detection Algorithm 1
Approximation Algorithm
Euclid's Extended Algorithm
Matrix multiplication
Factorial
Statistical Method
Probabilistic Methods
Max-flow min cut theorem: Ford-fulkerson OR Edmond-Karp

Name (Content) Editorials
Competition Sites

Name (Content) C++ Python Editorials
What is Backtracking? 1

Name (Content) C++ Python Editorials
What is Divide & Conquer?
Name (Content) C++ Python Editorials
Knapsack C++

Name (Content) C++ Python Editorials
C++

Name (Content) C++ Python Editorials
What is Recursion?

Name (Content) C++ Python Editorials
Binary Search C++ 1
Hash Search C++ 1
Linear Search C++ 1

About

archived notes

Resources

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors 2

  •  
  •