- Heap Sort
- Quick Sort - with three cases for pivot.
- Merge Sort
- Parenthesis Checker
- String Permutation - with backtracking approach
- N Queen - Backtracking and Branch & Bound approach
- M - Coloring - Backtracking
- Subset - Backtracking
- Sudoku Solver - Backtracking
- Rat in a Maze - Backtracking
- Dice Rolls & Dice Sum - Backtracking efficient way
- Magic Index - index such that A[i] = i
- Manacher's Algorithm - get longest palindromic substring in O(n)
- Roman-To-Int
- Regular Expression
- Tower of Hanoi
- Union-Find Data Structure - naive, pathcompression, rooted, weighted union.
- Queue Implementation - queue, circular-queue
- Heap - min-heap, max-heap
- Window Sliding
- Linked List
- KMP - string pattern matching algorithm.
- Binary Search Tree
- Banker's Algorithm
- Producer-Consumer Problem
- Ceaser Cypher
- Kruskal's Algorithm
- Prim's Algorithm
- Snake & Ladder Problem
- Beadth First Search
- Deapth First Search
- Detect Cycle
- Integer Knapsack(0/1) - implemented both with multiples allowed & not-allowed
- Fractional Knapsack
- Longest Increasing Subsequence
- Coin Change
- Minimum Path Sum
- Unique paths - print # of all the paths from top-left to bottom-right in a grid.
- House Robber Problem - problem in leetcode
- Binary Search - implementation with its practice problems e.g Peak Element in array
- Merge Pdf - merge multiple pdf files into one.
- Trailing Zeroes in a factorial
- Codejam Problems
- InterviewBit good problems
- Facebook HackerCup Problems
- Advent of Code