# Topic List

* Searching Algorithm
  * Linear Search
  * Binary Search
* Sorting Algorithm
  * Selection Sort, Insertion Sort, Bubble Sort
  * Merge Sort, Quick Sort, Heap Sort, Shell Sort
  * Counting Sort, Radix Sort, Bucket Sort
* Graph Algorithm
  * Graph Traversal
    * Breadth First Search (BFS)
    * Depth First Search (DFS)
  * Topological Sort
  * Bipartite Graph Check
  * Minimum Spanning Tree
    * Prim's Algorithm
    * Kruskal's Algorithm
  * Single Source Shortest Path
    * Dijkstra's Algorithm
    * Bellman-Ford Algorithm
  * All Pair Shortest Path
    * Floyd-Warshall Algorithm
* Greedy Algorithm
  * Selection Sort
  * Activity Selection Problem, Job Sequencing Problem, Task Scheduling
  * Huffman Coding, Huffman Decoding
  * Coin Change
  * Knapsack (0/1, Fractional)
  * Fibonacci
  * Graph Coloring
  * Minimum Spanning Tree (Prim’s, Kruskal’s, Boruvka’s)
  * Single Source Shortest Paths (Dijkstra’s)
  * Travelling Salesman Problem
* Divide and Conquer Algorithm
  * Binary Search
  * Merge Sort
  * Quick Sort
* Dynamic Programming
  * Fibonacci
  * Coin Change
  * Knapsack (0/1, Fractional)
  * Longest Increasing Subsequence
  * Longest Decreasing Subsequence
  * Longest Common Subsequence
  * Matrix Chain Multiplication
  * Single Source Shortest Paths (Bellman-Ford)
  * All Pair Shortest Paths (Floyd-Warshall)
  * Travelling Salesman Problem
* NP-Hard and NP-Complete Problems
