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.
Binary Search :Tutorial, Problems, Tutorial, Implementation, Problem
Quicksort :Tutorial, Implementation, Tutorial
Merge Sort :Tutorial, Implementation, Tutorial
Suffix Array :Tutorial, Tutorial, Implementation, Tutorial, Implementation, Problem, Problem
Knuth-Morris-Pratt Algorithm (KMP) :Tutorial, Tutorial, Implementation, Tutorial, Problem
Rabin-Karp Algorithm :Tutorial, Implementation, Tutorial, Problem, Problem
Tries :Tutorial, Problems, Tutorial : I,II, Tutorial, Problem, Problem, Problem
Depth First Traversal of a graph :Tutorial, Impelementation, Tutorial, Problems, Problem, Problem, Problem
Breadth First Traversal of a graph :Tutorial, Impelementation, Tutorial, Problems, Problem, Problem, Problem, Flood Fill
Dijkstra's Algorithm :Tutorial, Problems, Problem, Tutorial(greedy), Tutorial (with heap), Implementation, Problem, Problem
Binary Indexed Tree :Tutorial, Problems, Tutorial, Original Paper, Tutorial, Tutorial, Problem, Problem,Problem, Problem, Problem, Problem, Problem
Segment Tree (with lazy propagation) :Tutorial, Implementation, Tutorial, Tutorial, Problems, Implementation, Tutorial, Implementation and Various Uses, Persistent Segment Tree: I, II, problems same as BIT, Problem, Problem/HLD is used as well/
Z algorithm :Tutorial, Problem, Tutorial, Tutorial, problems same as KMP.
Floyd Warshall Algorithm :Tutorial, Implementation, Problem, Problem
Sparse Table (LCP, RMQ) :Tutorial, Problems, Tutorial, Implementation(C++), Java implementation
Heap / Priority Queue / Heapsort :Implementation, Explanation, Tutorial, Implementation, Problem, Chapter from CLRS
Binomial coefficients (nCr % M): Tutorial, Tutorial, Paper, Problem
Suffix Automaton :Detailed Paper, Tutorial, Implementation (I), Tutorial, Implementation (II), Problem, Problem, Problem, Problem, Tutorial, Implementation
Lowest Common Ancestor :Tutorial, Problems, Paper, Paper, Problem, Problem, Problem
Counting Inversions :Divide and Conquer, Segment Tree, Fenwick Tree, Problem
Suffix Tree :Tutorial, Tutorial, Intro, Construction : I, II, Implementation, Implementation, Problem, Problem, Problem, Problem
Dynamic Programming : Chapter from CLRS(essential), Tutorial, Problems, Problem, Problem, Problem, Problem, Tutorial, Problem, Problem, Problem, Longest Increasing Subsequence, Bitmask DP, Bitmask DP, Optimization, Problem, Problem, Problem, Problem, Problem, Problem, Problem, DP on Trees : I, II
Basic Data Structures :Tutorial, Stack Implementation, Queue Implementation, Tutorial, Linked List Implementation
Graphs :Definition, Representation, Definition, Representation, Problem, Problem
Minimum Spanning Tree :Tutorial, Tutorial, Kruskal's Implementation, Prim's Implementation, Problem, Problem, Problem, Problem, Problem
Combinatorics :Tutorial, Problems, Problem, Tutorial
Union Find/Disjoint Set :Tutorial, Tutorial, Problems, Problem, Problem, Problem
Knapsack problem :Solution, Implementation
Aho-Corasick String Matching Algorithm :Tutorial, Implementation, Problem, Problem, Problem, Problem
Strongly Connected Components :Tutorial, Implementation, Tutorial, Problem, Problem, Problem
Bellman Ford algorithm :Tutorial, Implementation, Tutorial, Implementation, Problem, Problem
Heavy-light Decomposition :Tutorial, Problems, Tutorial, Implementation, Tutorial, Implementation, Implementation, Problem, Problem, Problem
Convex Hull :Tutorial, Jarvis Algorithm Implementation, Tutorial with Graham scan, Tutorial, Implementation, Problem, Problem, Problem, Problem, Problem
Line Intersection :Tutorial, Implementation, Tutorial, Problems
Interval Tree :Tutorial, Implementation, Problem, Problem, Problem, Problem, Problem, Problem, Tutorial
Network flow :(Max Flow)Tutorial : I,II, Max Flow(Ford-Fulkerson) Tutorial, Implementation, (Min Cut) Tutorial, Implementation, (Min Cost Flow)Tutorial : I,II,III, Dinic's Algorithm with Implementation, Max flow by Edmonds Karp with Implementation, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem
K-d tree :Tutorial, Tutorial, Implementation, Problem
Binary Search Tree :Tutorial, Implementation, Searching and Insertion, Deletion
Quick Select :Implementation, Implementation
Treap/Cartesian Tree :Tutorial(detailed), Tutorial, Implementation, Uses and Problems, Problem, Problem
Game Theory :Detailed Paper, Tutorial, Problems, Grundy Numbers, Tutorial with example problems - I,II,III,IV, Tutorial, Problems, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Problem, Nim
STL (C++) :I,II, Crash Course
Manacher's Algorithm :Implementation, Tutorial, Tutorial, Implementation, Tutorial, Implementation, Problem, Problem, Problem
Detecting Cycles in a Graph : Directed - I, II Undirected : I
Backtracking :N queens problem, Tug of War, Sudoku
Eulerian and Hamiltonian Paths :Tutorial, Tutorial, (Eulerian Path and Cycle)Implementation, (Hamiltonian Cycle)Implementation
Graph Coloring :Tutorial, Implementation
Meet in the Middle :Tutorial, Implementation
Johnson's Algorithm :Tutorial, Tutorial, Implementation
Maximal Matching in a General Graph :Blossom/Edmond's Algorithm, Implementation, Tutte Matrix, Problem
Recursion : I,II, Towers of Hanoi with explanation
Link-Cut Tree :Tutorial, Wiki, Tutorial, Implementation, Problem, Problem, Problem, Problem
Euler's Totient Function :Explanation, Implementation, Problems, Explanation, Problems
Edit/Levenshtein Distance :Tutorial, Introduction, Tutorial, Problem, Problem
Mo's Algorithm : Tutorial and Problems