Medium

Array & HASH

  • Group Anagrams
  • Top K Frequent Elements
  • Encode and Decode Strings
  • Product of Array Except Self
  • Valid Sudoku
  • Longest Consecutive Sequence

Stack

  • Min Stack
  • Evaluate Reverse Polish Notation
  • Generate Parentheses
  • Daily Temperatures
  • Car Fleet

Two Pointers

  • Two Sum II Input Array Is Sorted
  • 3Sum
  • Container With Most Water
  • Search a 2D Matrix
  • Koko Eating Bananas
  • Find Minimum In Rotated Sorted Array
  • Search In Rotated Sorted Array
  • Time Based Key Value Store

Sliding Window

  • Longest Substring Without Repeating Characters
  • Longest Repeating Character Replacement
  • Permutation In String

Linked List

  • Reorder List
  • Remove Nth Node From End of List
  • Copy List With Random Pointer
  • Add Two Numbers
  • Find The Duplicate Number
  • LRU Cache

Trees

  • Lowest Common Ancestor of a Binary Search Tree
  • Binary Tree Level Order Traversal
  • Binary Tree Right Side View
  • Count Good Nodes In Binary Tree
  • Validate Binary Search Tree
  • Kth Smallest Element In a Bst
  • Construct Binary Tree From Preorder And Inorder Traversal

Tries

  • Implement Trie Prefix Tree
  • Design Add And Search Words Data Structure

Backtracking

  • Subsets
  • Combination Sum
  • Permutations
  • Subsets II
  • Combination Sum II
  • Word Search
  • Palindrome Partitioning
  • Letter Combinations of a Phone Number

Heap / Priority Queue

  • K Closest Points to Origin
  • Kth Largest Element In An Array
  • Task Scheduler
  • Design Twitter

Intervals

  • Insert Interval
  • Merge Intervals
  • Non Overlapping Intervals
  • Meeting Rooms II

Greedy

  • Maximum Subarray
  • Jump Game
  • Jump Game II
  • Gas Station
  • Hand of Straights
  • Merge Triplets to Form Target Triplet
  • Partition Labels
  • Valid Parenthesis String

Graphs

  • Number of Islands
  • Max Area of Island
  • Clone Graph
  • Walls And Gates
  • Rotting Oranges
  • Pacific Atlantic Water Flow
  • Surrounded Regions
  • Course Schedule
  • Course Schedule II
  • Graph Valid Tree
  • Number of Connected Components In An Undirected Graph
  • Redundant Connection

1-D Dynamic Programming

  • House Robber
  • House Robber II
  • Longest Palindromic Substring
  • Palindromic Substrings
  • Decode Ways
  • Coin Change
  • Maximum Product Subarray
  • Word Break
  • Longest Increasing Subsequence
  • Partition Equal Subset Sum

Advanced Graphs

  • Min Cost to Connect All Points
  • Network Delay Time
  • Cheapest Flights Within K Stops

2-D Dynamic Programming

  • Unique Paths
  • Longest Common Subsequence
  • Best Time to Buy And Sell Stock With Cooldown
  • Coin Change II
  • Target Sum
  • Interleaving String
  • Edit Distance

Bit Manipulation

  • Sum of Two Integers
  • Reverse Integer

Math & Geometry

  • Rotate Image
  • Spiral Matrix
  • Set Matrix Zeroes
  • Pow(x, n)
  • Multiply Strings
  • Detect Squares