Data Structures and Algorithms
Checklist for learning & interviews
Algorithm Analysis
Big O notatio Time complexit
Master’s theorem Space complexity
Data Structures
Basic Data Structures
Arra Stac Se Tre
LinkedList Queue HashMap Graph
Advanced Data Structures
Suffix Arra Trie (Prefix tree
Heap (Priority Queue Suffix Tre
Segment Tre Self balancing tre
Binary Indexed Tree Disjoint set
Paradigms
Basic algorithmic paradigms
Brute forc Divide & Conque Sliding window
Recursion Two pointers
Advanced algorithmic paradigms
Greedy techniqu Backtrackin
Branch & Bound Dynamic Programming
Created by Sadanand Pai
Algorithms
Search Algorithms
Linear search Binary search
Basic Sorting algorithms Advanced Sorting algorithms
Bubble sor Heap sor
Selection sor Quick sor
Insertion sort Merge sort
Basic Tree algorithms Advanced Tree algorithms
In-order Traversa Rooting a tre
Pre-order Traversa Euler's tou
Post-order Traversa RMQ Algorith
Node insert & remove BST validation
String algorithms
Rabin-Kar Z algorith
Knuth Morris Prat Manachar’s algorithm
Boyer-Moore Algorithm
Basic Graph Algorithms
Depth First Searc Flood Fill algorith
Breadth First Searc
Shortest distanc
Topological Sort Lee’s algorith
DFS base A* algorithms
Kahn's algorithm
Created by Sadanand Pai
Advanced Graph algorithms
Minimum Spanning Tre Shortest Path algorithm
Kruska Topological sorted min pat
Pri Dijkstr
Strongly Connected Component Bellman For
Tarja Floyd Warshal
Kosaraj Johnso
Minimum Cost algorithm Maximum flow algorithm
Cycle Cancellin Ford Fulkerso
Hungaria Push-relabe
Dinic's
Hierholzer’s algorithm
Implementations
Fibonacci number Levenshtein distanc
Bit manipulatio Biconnected Component
Tower of Heno Bipartite detectio
Strassen's algorith Isomorphic graph
Kadane’s Algorith Hamiltonian Pat
Knapsack 0/ Vertex Colorin
Knapsack Fractiona Articulation Poin
Huffman cod Articulation Bridg
Task-scheduling Travelling salesman Problem
Created by Sadanand Pai