Data Structures Binary Search Tree (wiki) (mit) Binary Tree (wiki) Graph(wiki) Hash Tables (wiki) Linked List (wiki) Singly Linked List (wiki) Doubly linked list (wiki) Matrix(wiki) Max Heap (wiki) Min Heap (wiki) Priority Queue (wiki) Queue(wiki) Stack(wiki) Graph algorithms Searching: Depth First Search (wiki) Breadth First Search (wiki) hortest path: Dijkstra(wiki) Sorting: Topological Sort (wiki) Maths algorithms Binary GCD algorithm (wiki) Closest pairs (wiki) FastPower(wiki) Fibonacci(wiki) Fisher-Yates Shuffle-yates (wiki) Erastothenes Sieve (wiki) Extented GCD algorithm (wiki) Karatsuba's Multiplication (wiki) Newton's Squarenewton-sqrt (wiki) Permutations Count Strassen's matrixstrassen (wiki) Sorting algorithms Bubble Sort (wiki) Heap Sort (mit notes) (wiki) Quick Sort(mit notes) (wiki) Merge Sort (mit notes) (wiki) Insertion Sort(mit notes) (wiki) Shell Sort(mit notes) (wiki) Selection Sort (mit notes) (wiki) Searching algorithms Binary Search (wiki)