
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

KnuthMorrisPratt Algorithm (KMP) :
Tutorial, Tutorial, Implementation, Tutorial, Problem

RabinKarp 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, problems same as BIT, Problem, Problem/HLD is used as well/

Z algorithm :
Tutorial, Problem, 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

Modular Multiplicative Inverse

nCr % M

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

Euclid's Extended Algorithm

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

Logarithmic Exponentiation

Graphs :
Definition, Representation, Definition, Representation, Problem, Problem

Minimum Spanning Tree :
Tutorial, Tutorial, Kruskal's Implementation, Prim's Implementation, Problem, Problem, Problem, Problem, Problem

Efficient Prime Factorization

Combinatorics :
Tutorial, Problems, Problem, Tutorial

Union Find/Disjoint Set :
Tutorial, Tutorial, Problems, Problem, Problem, Problem

Knapsack problem :
Solution, Implementation

AhoCorasick 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

Heavylight 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

Sieve of Erastothenes

Interval Tree :
Tutorial, Implementation, Problem, Problem, Problem, Problem, Problem, Problem, Tutorial

Counting Sort

Probabilities

Matrix Exponentiation :
Tutorial, Tutorial

Network flow :
(Max Flow)Tutorial : I, II, Max Flow(FordFulkerson) 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

Kd tree :
Tutorial, Tutorial, Implementation, Problem

Deque

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

Maximum Bipartite Matching

Manacher's Algorithm :
Implementation, Tutorial, Tutorial, Implementation, Tutorial, Implementation, Problem, Problem, Problem

MillerRabin Primality Test : Code

Stable Marriage Problem

Hungarian Algorithm, Tutorial

Sweep line Algorithm : I, II

LCP :
Tutorial, Implementation, Tutorial, Implementation

Gaussian Elimination

Pollard Rho Integer Factorization, problem

Topological Sorting

Detecting Cycles in a Graph : Directed  I, II
Undirected : I

Geometry : Basics, Tutorial

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

Arbitrary Precision Integer(BigInt), II

Radix Sort, Bucket Sort

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

Inclusion and Exclusion Principle : I, II

Coordinate Compression

SqrtDecomposition :
Tutorial, Tutorial, Problem, Problem

LinkCut Tree :
Tutorial, Wiki, Tutorial, Implementation, Problem, Problem, Problem, Problem

Euler's Totient Function :
Explanation, Implementation, Problems, Explanation, Problems

Burnside Lemma :
Tutorial, Tutorial, Problem

Edit/Levenshtein Distance :
Tutorial, Introduction, Tutorial, Problem, Problem

Branch and Bound

Math for Competitive Programming

Mo's Algorithm : Tutorial and Problems
asked
31 Jul '14, 23:29
6★neo1tech9_7
8.5k●5●15●37
accept rate:
19%

Just a suggestion. Sort this list according to their usage. Like, the algorithms which are most used would be ranked first, then the rarely used problems.
For BIT use this tutorial: http://stackoverflow.com/questions/15439233/bitusingabinaryindexedtree  way better than all other resources. And thanks for the resource.
after spending hours reading KMP from several sites and failing to understand, i found this one very straight forward and well explaining: http://keithschwarz.com/interesting/code/?dir=knuthmorrispratt
@nishant2002 added :)
@neo1tech9_7 it seems the first link for Binary Search isn't valid (http://help.topcoder.com/datascience/competinginalgorithmchallenges/algorithmtutorials/binarysearch/ ). Look into it.
@neo1tech9_7 all topcoder links need to be updated from http://help.topcoder.com/datascience/competinginalgorithmchallenges/algorithmtutorials/introductiontostringsearchingalgorithms/ to http://www.topcoder.com/community/datascience/datasciencetutorials/introductiontostringsearchingalgorithms/
neo1tech9_7
In what order should I start.
surprised that there was no mention of FFT and NTT