1 Heaps & Bit Manipulation

  1. Single Number (Bit Manipulation)
  2. Kth Smallest Element in a BST
  3. Kth Largest Element in an Array
  4. K Closest Points to Origin
  5. Top K Frequent Elements
  6. Delete Node in a BST
  7. Balance a Binary Search Tree
  8. How Many Numbers Are Smaller Than the Current Number (Greedy)

2 DP & Backtracking

  1. Coin Change Climbing Stairs
  2. Maximum Subarray Counting Bits
  3. Range Sum Query – Immutable
  4. Subsets
  5. Combinations
  6. Permutations
  7. Cheapest Flights Within K
  8. Stops
  9. Minimum Absolute Difference

3 Linked Lists

  1. Middle of Linked List
  2. Linked List Cycle
  3. Reverse Linked List
  4. Remove Linked List Elements
  5. Reverse Linked List
  6. Palindrome Linked List
  7. Merge Two Sorted Lists
  8. Linked List Sorting

4 Trees & Graphs

  1. Average of Levels
  2. Minimum Depth
  3. Min/Max Value
  4. Level Order Traversal
  5. Same Tree
  6. Path Sum
  7. Diameter of a Binary Tree
  8. Invert Binary Tree
  9. Lowest Common Ancestor
  10. Binary Search Tree
  11. Insert in Binary Search Tree
  12. Convert Sorted Array to Binary Search Tree
  13. Two Sum IV – Input is a BST
  14. Lowest Common Ancestor

5 Stacks & Queues

  1. Min Stack
  2. Valid Parentheses
  3. Evaluate Reverse Polish Notation
  4. Stack Sorting
  5. Implement Stack using Queues
  6. Time Needed to Buy Tickets
  7. Reverse the First K Elements of a Queue
  8. Task Scheduler
  9. Letter Case Permutation
  10. Minimum Size Subarray Sum

6 Arrays & Strings

  1. Contains Duplicate
  2. Missing Number
  3. Numbers Disappeared Array
  4. Two Sum
  5. How Many Numbers Are Smaller Than the Current Number
  6. Minimum Time Visiting All Points
  7. Spiral Matrix
  8. Number of Islands
  9. Best Time to Buy and Sell Stock
  10. Squares of a Sorted Array
  11. 3Sum
  12. Longest Mountain in Array