## Analysis of Algorithm

- Asymptotic Analysis.
- Worst,Best and Average case.
- Asymptotic Notation.
- Asymptotic Analysis of Loops.
- Time complexity of Building a Heap.
- Space Complexity.

## Sorting

- Selection Sort.
- Bubble Sort.
- Insertion Sort.
- Merge Sort.
- Counting sort.
- Pancake Sorting.
- Sorting algorithm that makes the minimum number of memory writes.

## Number Theory

- Bitwise Sieve of Eratosthenes
- Segmented Sieve.
- Modular Exponentiation.
- Number of Trailing Zeros in N factorial.
- Factorial of Large Numbers (greater than 20).
- Euclid’s Algorithm GCD.
- Euler’s Totient Function (Sieve and Brute Force).
- Chinese Remainder Theorem (CRT).
- Sum of DIVISORS/FACTORS of a Number.

## Greedy

## Dynamic Programming

- Longest Increasing Subsequence (LIS) .
- Longest Common Subsequence (LCS).
- Edit Distance Problem.
- 0-1 Knapsack Problem.
- Matrix Chain Multiplication.
- Minimum/Maximum Cost Path Problem.
- Coin Change Problem.
- Maximum Subarray Problem (Largest contiguous subarray / Kadane’s algo).
- M3TILE Problem.