grindmapcompany-wise LeetCode
All companies

Microsoft LeetCode Questions

100 questions all-time · 21 easy · 63 medium · 16 hard
# Problem Difficulty Frequency Acceptance
1Two Sum
Array, Hash Table
Easy
100
55.8%
2Merge Sorted Array
Array, Two Pointers, Sorting
Easy
84
52.9%
3Longest Substring Without Repeating Characters
Hash Table, String, Sliding Window
Medium
79
36.9%
4Add Two Numbers
Linked List, Math, Recursion
Medium
78
46.2%
5Longest Palindromic Substring
Two Pointers, String, Dynamic Programming
Medium
76
35.8%
6Trapping Rain Water
Array, Two Pointers, Dynamic Programming, Stack, Monotonic Stack
Hard
76
65.1%
7Merge Intervals
Array, Sorting
Medium
74
49.4%
8Valid Parentheses
String, Stack
Easy
73
42.3%
9Median of Two Sorted Arrays
Array, Binary Search, Divide and Conquer
Hard
73
43.8%
10Maximum Subarray
Array, Divide and Conquer, Dynamic Programming
Medium
73
52.1%
113Sum
Array, Two Pointers, Sorting
Medium
73
37.1%
12Group Anagrams
Array, Hash Table, String, Sorting
Medium
70
70.9%
13Search in Rotated Sorted Array
Array, Binary Search
Medium
69
42.8%
14Reverse Nodes in k-Group
Linked List, Recursion
Hard
69
63.0%
15Merge Two Sorted Lists
Linked List, Recursion
Easy
69
66.8%
16Spiral Matrix
Array, Matrix, Simulation
Medium
68
53.9%
17Roman to Integer
Hash Table, Math, String
Easy
68
64.9%
18Climbing Stairs
Math, Dynamic Programming, Memoization
Easy
68
53.5%
19Rotate Image
Array, Math, Matrix
Medium
68
77.9%
20Container With Most Water
Array, Two Pointers, Greedy
Medium
68
57.8%
21Merge k Sorted Lists
Linked List, Divide and Conquer, Heap (Priority Queue), Merge Sort
Hard
68
56.8%
22Palindrome Number
Math
Easy
68
59.2%
23Sort Colors
Array, Two Pointers, Sorting
Medium
66
67.6%
24Longest Common Prefix
String, Trie
Easy
66
45.5%
25Remove Duplicates from Sorted Array
Array, Two Pointers
Easy
65
60.4%
26Set Matrix Zeroes
Array, Hash Table, Matrix
Medium
63
60.7%
27Letter Combinations of a Phone Number
Hash Table, String, Backtracking
Medium
63
63.9%
28Reverse Integer
Math
Medium
63
30.3%
29Word Search
Array, String, Backtracking, Depth-First Search, Matrix
Medium
61
45.3%
30Generate Parentheses
String, Dynamic Programming, Backtracking
Medium
60
77.1%
31Jump Game
Array, Dynamic Programming, Greedy
Medium
59
39.5%
32Next Permutation
Array, Two Pointers
Medium
59
43.1%
33Remove Element
Array, Two Pointers
Easy
58
60.0%
34Minimum Path Sum
Array, Dynamic Programming, Matrix
Medium
58
66.5%
35Binary Tree Zigzag Level Order Traversal
Tree, Breadth-First Search, Binary Tree
Medium
58
61.7%
36String to Integer (atoi)
String
Medium
56
19.2%
37Validate Binary Search Tree
Tree, Depth-First Search, Binary Search Tree, Binary Tree
Medium
56
34.4%
38First Missing Positive
Array, Hash Table
Hard
55
41.1%
39Find the Index of the First Occurrence in a String
Two Pointers, String, String Matching
Easy
55
45.0%
40Combination Sum
Array, Backtracking
Medium
55
74.7%
41Find First and Last Position of Element in Sorted Array
Array, Binary Search
Medium
55
46.8%
42Largest Rectangle in Histogram
Array, Stack, Monotonic Stack
Hard
55
47.4%
43Jump Game II
Array, Dynamic Programming, Greedy
Medium
54
41.5%
44Permutations
Array, Backtracking
Medium
54
80.7%
45Unique Paths
Math, Dynamic Programming, Combinatorics
Medium
53
65.8%
46Swap Nodes in Pairs
Linked List, Recursion
Medium
53
67.2%
474Sum
Array, Two Pointers, Sorting
Medium
52
38.2%
48Search Insert Position
Array, Binary Search
Easy
52
49.0%
49Pow(x, n)
Math, Recursion
Medium
52
37.0%
50Integer to Roman
Hash Table, Math, String
Medium
52
68.6%
51Subsets
Array, Backtracking, Bit Manipulation
Medium
52
80.9%
52Regular Expression Matching
String, Dynamic Programming, Recursion
Hard
52
29.3%
53Search a 2D Matrix
Array, Binary Search, Matrix
Medium
51
52.3%
54Binary Tree Level Order Traversal
Tree, Breadth-First Search, Binary Tree
Medium
51
70.6%
55N-Queens
Array, Backtracking
Hard
51
72.8%
56Valid Sudoku
Array, Hash Table, Matrix
Medium
50
62.3%
57Binary Tree Inorder Traversal
Stack, Tree, Depth-First Search, Binary Tree
Easy
50
78.6%
58Divide Two Integers
Math, Bit Manipulation
Medium
50
18.4%
59Remove Nth Node From End of List
Linked List, Two Pointers
Medium
50
49.0%
60Edit Distance
String, Dynamic Programming
Medium
50
58.8%
61Simplify Path
String, Stack
Medium
50
47.9%
62Restore IP Addresses
String, Backtracking
Medium
49
53.2%
63Sudoku Solver
Array, Hash Table, Backtracking, Matrix
Hard
49
63.9%
64Longest Valid Parentheses
String, Dynamic Programming, Stack
Hard
47
36.3%
65Decode Ways
String, Dynamic Programming
Medium
46
36.5%
66Maximal Rectangle
Array, Dynamic Programming, Stack, Matrix, Monotonic Stack
Hard
45
53.7%
67Sqrt(x)
Math, Binary Search
Easy
45
40.4%
68Reverse Linked List II
Linked List
Medium
44
49.6%
69Permutations II
Array, Backtracking, Sorting
Medium
44
61.6%
70Zigzag Conversion
String
Medium
44
51.6%
71Plus One
Array, Math
Easy
43
47.5%
72Symmetric Tree
Tree, Depth-First Search, Breadth-First Search, Binary Tree
Easy
43
59.3%
73Add Binary
Math, String, Bit Manipulation, Simulation
Easy
41
55.7%
74Minimum Window Substring
Hash Table, String, Sliding Window
Hard
41
45.4%
75Search in Rotated Sorted Array II
Array, Binary Search
Medium
39
38.9%
76Wildcard Matching
String, Dynamic Programming, Greedy, Recursion
Hard
39
29.9%
77Remove Duplicates from Sorted List
Linked List
Easy
39
54.9%
78Remove Duplicates from Sorted Array II
Array, Two Pointers
Medium
38
62.9%
79Insert Interval
Array
Medium
38
43.5%
80Combination Sum II
Array, Backtracking
Medium
38
57.7%
81Multiply Strings
Math, String, Simulation
Medium
38
42.3%
82Text Justification
Array, String, Simulation
Hard
38
48.1%
83Spiral Matrix II
Array, Matrix, Simulation
Medium
38
73.4%
84Length of Last Word
String
Easy
38
56.3%
85Recover Binary Search Tree
Tree, Depth-First Search, Binary Search Tree, Binary Tree
Medium
36
56.3%
86Interleaving String
String, Dynamic Programming
Medium
36
42.2%
87Same Tree
Tree, Depth-First Search, Breadth-First Search, Binary Tree
Easy
36
65.1%
88Maximum Depth of Binary Tree
Tree, Depth-First Search, Breadth-First Search, Binary Tree
Easy
36
77.1%
89Subsets II
Array, Backtracking, Bit Manipulation
Medium
36
59.5%
90Rotate List
Linked List, Two Pointers
Medium
36
39.9%
91Remove Duplicates from Sorted List II
Linked List, Two Pointers
Medium
35
49.9%
92Combinations
Backtracking
Medium
31
72.9%
93Count and Say
String
Medium
31
60.5%
943Sum Closest
Array, Two Pointers, Sorting
Medium
31
46.9%
95Substring with Concatenation of All Words
Hash Table, String, Sliding Window
Hard
27
33.0%
96Partition List
Linked List, Two Pointers
Medium
24
59.0%
97Unique Paths II
Array, Dynamic Programming, Matrix
Medium
24
43.2%
98Unique Binary Search Trees
Math, Dynamic Programming, Tree, Binary Search Tree, Binary Tree
Medium
21
62.4%
99N-Queens II
Backtracking
Hard
21
76.7%
100Unique Binary Search Trees II
Dynamic Programming, Backtracking, Tree, Binary Search Tree, Binary Tree
Medium
13
60.4%

How to read this list

The tabs at the top split the questions by how recently people said they were asked in interviews. "Last 30 Days" is the past month, "Last 3 Months" is the past quarter, and so on. "All Time" is every question on record for this company.

Frequency is a score from 0 to 100 for how often a question showed up in that time window. A higher number means it came up more often, so the list starts with the most common questions first. Acceptance is the share of submissions that pass on LeetCode. Click any question to open it on LeetCode.