Curated List of algorithms that have been studied

Analysis

  1. Asymptotic Notations

    1. Bounds: Upper, Lower and Tight
    2. Recursion Trees

Sorting Algorithms

  1. Count Sort
  2. Radix Sort

Divide and Conqueror

  1. Merge Sort
  2. Counting Inversion Pairs
  3. Maximum Subarray Sum
  4. Quick Sort

Dynamic Programming

  1. Kadane’s Algorithm
  2. Road Cutting
  3. Binary Knapsack
  4. Longest Common Subsequence (LCS)

Greedy Approach

  1. Fractional Knapsack
  2. Activity Selection

Graphs

Traversals

  1. BFS
  2. DFS

Applications

  1. Topological Sort
  2. Strongly Connected Components

Minimum Spanning Trees

  1. Prim’s Algorithm
  2. Kruskal’s Algorithm

Single Source Shortest Path

  1. Dijkstra Algorithm

All Paths Shortest Path

  1. Floyd–Warshall Algorithm