Data Structure and Algorithm Use full Links.
Hi all,
I need your help to make a list of most used data structures and algorithms along with their tutorials, implementation and some problems on them. It will be helpful to everyone in many ways. I request everyone to contribute to this list by providing links to tutorials, problems, etc. I will keep updating this list regularly.
I need your help to make a list of most used data structures and algorithms along with their tutorials, implementation and some problems on them. It will be helpful to everyone in many ways. I request everyone to contribute to this list by providing links to tutorials, problems, etc. I will keep updating this list regularly.
- Binary Search :
Tutorial, Problems 2.7k, Tutorial, Implementation 703, Problem 743 - Quicksort :
Tutorial, Implementation 411, Tutorial 198 - Merge Sort :
Tutorial, Implementation 190, Tutorial 198 - Suffix Array :
Tutorial 425, Tutorial, Implementation 176, Tutorial, Implementation 74, Problem 101, Problem 51 - Knuth-Morris-Pratt Algorithm (KMP) :
Tutorial 320, Tutorial, Implementation 105, Tutorial 31, Problem 87 - Rabin-Karp Algorithm :
Tutorial, Implementation 154, Tutorial 29, Problem 30, Problem 22 - Tries :
Tutorial, Problems 214, Tutorial : I, 101 II 24, Tutorial 39, Problem 54, Problem 24, Problem 26 - Depth First Traversal of a graph :
Tutorial, Impelementation 219, Tutorial, Problems 144, Problem 79, Problem 36, Problem 24 - Breadth First Traversal of a graph :
Tutorial, Impelementation 83, Tutorial, Problems 144, Problem 31, Problem 17, Problem 10, Flood Fill 17 - Dijkstra’s Algorithm :
Tutorial, Problems 149, Problem 29, Tutorial(greedy) 31, Tutorial (with heap) 21, Implementation 28, Problem 13, Problem 15 - Binary Indexed Tree :
Tutorial, Problems 128, Tutorial 33, Original Paper 17, Tutorial 14, Tutorial 9, Problem 14, Problem 7,
Problem 7, Problem 12, Problem 5, Problem 10, Problem 10 - Segment Tree (with lazy propagation) :
Tutorial, Implementation 109, Tutorial 34, Tutorial, Problems, Implementation 48, Tutorial, Implementation and Various Uses 30, Persistent Segment Tree: I 9, II 5, problems same as BIT, Problem 14, Problem 5/HLD is used as well/ - Z algorithm :
Tutorial, Problem 96, Tutorial 14, Tutorial 7, problems same as KMP. - Floyd Warshall Algorithm :
Tutorial, Implementation 69, Problem 12, Problem 3 - Sparse Table (LCP, RMQ) :
Tutorial, Problems 48, Tutorial, Implementation(C++) 14, Java implementation 3 - Heap / Priority Queue / Heapsort :
Implementation, Explanation 62, Tutorial 29, Implementation 7, Problem 19, Chapter from CLRS - Modular Multiplicative Inverse 51
- Binomial coefficients (nCr % M): Tutorial 32, Tutorial 5, Paper 5 (Link Not Working), Problem 8
- Suffix Automaton :
Detailed Paper 18, Tutorial, Implementation (I) 11, Tutorial, Implementation (II) 3, Problem, Problem 2, Problem 30, Problem 51, Tutorial, Implementation 3 - Lowest Common Ancestor :
Tutorial, Problems 56, Paper 10, Paper 7, Problem 10, Problem 4, Problem 8 - Counting Inversions :
Divide and Conquer 25, Segment Tree 11, Fenwick Tree 15, Problem 6 - Euclid’s Extended Algorithm 28
- Suffix Tree :
Tutorial 25, Tutorial 4, Intro 4, Construction : I 1, II 2, Implementation 2, Implementation 1, Problem 1, Problem 1, Problem, Problem 1 - Dynamic Programming :
Chapter from CLRS(essential), Tutorial, Problems 108, Problem 45, Problem 11, Problem 9, Problem 7, Tutorial 14, Problem 3, Problem 3, Problem 8, Longest Increasing Subsequence 4, Bitmask DP 23, Bitmask DP 15, Optimization 6, Problem 4, Problem 4, Problem 1, Problem 1, Problem 1, Problem 2, Problem 3, DP on Trees : I 14, II 5 - Basic Data Structures :
Tutorial 113, Stack Implementation 61, Queue Implementation, Tutorial 25, Linked List Implementation 56 - Logarithmic Exponentiation 31
- Graphs :
Definition, Representation 50, Definition, Representation 18, Problem 26, Problem 10 - Minimum Spanning Tree :
Tutorial 21, Tutorial, Kruskal’s Implementation 15, Prim’s Implementation 5, Problem 3, Problem 3, Problem 5, Problem 3, Problem 2 - Efficient Prime Factorization 24
- Combinatorics :
Tutorial, Problems 103, Problem 17, Tutorial 27 - Union Find/Disjoint Set :
Tutorial 34, Tutorial, Problems 11, Problem 6, Problem 5, Problem 1 - Knapsack problem :
Solution, Implementation 63 - Aho-Corasick String Matching Algorithm :
Tutorial 21, Implementation 15, Problem 4, Problem 1, Problem 1, Problem 1 - Strongly Connected Components :
Tutorial, Implementation 17, Tutorial 2, Problem 2, Problem, Problem - Bellman Ford algorithm :
Tutorial, Implementation 28, Tutorial, Implementation 2, Problem 2, Problem 1 - Heavy-light Decomposition :
Tutorial, Problems 19, Tutorial, Implementation 6, Tutorial 7, Implementation 2, Implementation 1, Problem 1, Problem 3, Problem 1 - Convex Hull :
Tutorial, Jarvis Algorithm Implementation 22, Tutorial with Graham scan 2, Tutorial, Implementation 4, Problem 2, Problem 2, Problem 1, Problem, Problem 1 - Line Intersection :
Tutorial, Implementation 23, Tutorial, Problems 4 - Sieve of Erastothenes 30
- Interval Tree :
Tutorial, Implementation 26, Problem 3, Problem, Problem, Problem, Problem, Problem 1, Tutorial 2 - Counting Sort 16
- Probabilities 42
- Matrix Exponentiation :
Tutorial 25, Tutorial 4 - Network flow :
(Max Flow)Tutorial : I, 17 II 4, Max Flow(Ford-Fulkerson) Tutorial, Implementation 12, (Min Cut) Tutorial, Implementation 3, (Min Cost Flow)Tutorial : I, 3 II, 2 III 1, Dinic’s Algorithm with Implementation 3, Max flow by Edmonds Karp with Implementation 4, Problem, Problem, Problem, Problem, Problem, Problem, Problem 1, Problem, Problem 1, Problem, Problem, Problem 1, Problem, Problem, Problem 2 - K-d tree :
Tutorial 31, Tutorial 7, Implementation 10, Problem 4 - Deque 24
- Binary Search Tree :
Tutorial, Implementation 50, Searching and Insertion 9, Deletion 4 - Quick Select :
Implementation 10, Implementation 2 - Treap/Cartesian Tree :
Tutorial(detailed) 14, Tutorial, Implementation 5, Uses and Problems 7, Problem, Problem - Game Theory :
Detailed Paper 35, Tutorial, Problems 16, Grundy Numbers 2, Tutorial with example problems - I, 4 II, III, IV, Tutorial, Problems 1, Problem, Problem 1, Problem 3, Problem, Problem, Problem, Problem 1, Problem 1, Problem 1, Problem 1, Problem 1, Nim 3 - STL (C++) :
I, 153 II 67, Crash Course 221 - Maximum Bipartite Matching 13
- Manacher’s Algorithm :
Implementation 11, Tutorial 8, Tutorial, Implementation 1, Tutorial, Implementation 2, Problem 3, Problem 2, Problem 4 - Miller-Rabin Primality Test 9 and this 3
- Stable Marriage Problem 24
- Hungarian Algorithm 23, Tutorial 4
- Sweep line Algorithm : I 13, II 3
- LCP :
Tutorial, Implementation 22, Tutorial, Implementation 6 - Gaussian Elimination 18
- Pollard Rho Integer Factorization 5, problem 1
- Topological Sorting 11
- Detecting Cycles in a Graph : Directed - I 11, II 3
Undirected : I 3 - Geometry : Basics 26, Tutorial 15
- Backtracking :
N queens problem 31, Tug of War 6, Sudoku 7 - Eulerian and Hamiltonian Paths :
Tutorial 4, Tutorial, (Eulerian Path and Cycle)Implementation 1, (Hamiltonian Cycle)Implementation 4 - Graph Coloring :
Tutorial, Implementation 28 - Meet in the Middle :
Tutorial 32, Implementation 5 - Arbitrary Precision Integer(BigInt) 5, II 1
- Radix Sort 1, Bucket Sort 1
- Johnson’s Algorithm :
Tutorial 23, Tutorial 3, Implementation 4 - Maximal Matching in a General Graph :
Blossom/Edmond’s Algorithm, Implementation 9, Tutte Matrix, Problem 2 - Recursion : I, 36 II 9, Towers of Hanoi 13 with explanation 7
- Inclusion and Exclusion Principle : I 15, II 1
- Co-ordinate Compression 12
- Sqrt-Decomposition :
Tutorial 22, Tutorial 7, Problem 9, Problem 5 - Link-Cut Tree :
Tutorial 22, Wiki 2, Tutorial, Implementation 7, Problem 2, Problem 2, Problem 1, Problem 3 - Euler’s Totient Function :
Explanation, Implementation, Problems 30, Explanation, Problems 6 - Burnside Lemma :
Tutorial 19, Tutorial 6, Problem 9 - Edit/Levenshtein Distance :
Tutorial 17, Introduction 7, Tutorial 8, Problem 4, Problem 5 - Branch and Bound 33
- Math for Competitive Programming 359
- Mo’s Algorithm : Tutorial and Problems 145

No comments:
Post a Comment