Skip to main content
Microsoft logo

Microsoft Interview Questions

Curated technical problems, DSA questions & coding interview rounds

Target Role

Software Engineer (SDE I / II)

Problem Count

47+ Verified

Assessment Type

DSA & System Design

Preparation Mode

Live AI Interactive

Two Sum

EASY
56% Acceptance100% Frequency
Array
Hash Table

Longest Substring Without Repeating Characters

MEDIUM
37% Acceptance72% Frequency
Hash Table
String
Sliding Window

Longest Palindromic Substring

MEDIUM
36% Acceptance72% Frequency
Two Pointers
String
Dynamic Programming

Median of Two Sorted Arrays

HARD
44% Acceptance66% Frequency
Array
Binary Search
Divide and Conquer

Search in Rotated Sorted Array

MEDIUM
43% Acceptance66% Frequency
Array
Binary Search

Container With Most Water

MEDIUM
58% Acceptance66% Frequency
Array
Two Pointers
Greedy

Group Anagrams

MEDIUM
71% Acceptance60% Frequency
Array
Hash Table
String
Sorting

Minimum Edge Reversals So Every Node Is Reachable

HARD
55% Acceptance60% Frequency
Dynamic Programming
Depth-First Search
Breadth-First Search
Graph

Roman to Integer

EASY
65% Acceptance60% Frequency
Hash Table
Math
String

Find Peak Element

MEDIUM
47% Acceptance60% Frequency
Array
Binary Search

Climbing Stairs

EASY
54% Acceptance60% Frequency
Math
Dynamic Programming
Memoization

Best Time to Buy and Sell Stock

EASY
55% Acceptance60% Frequency
Array
Dynamic Programming

Move Zeroes

EASY
63% Acceptance60% Frequency
Array
Two Pointers

Largest Rectangle in Histogram

HARD
47% Acceptance60% Frequency
Array
Stack
Monotonic Stack

K-th Smallest in Lexicographical Order

HARD
46% Acceptance60% Frequency
Trie

Jump Game II

MEDIUM
42% Acceptance60% Frequency
Array
Dynamic Programming
Greedy

Max Consecutive Ones

EASY
62% Acceptance60% Frequency
Array

Minimum Size Subarray Sum

MEDIUM
49% Acceptance60% Frequency
Array
Binary Search
Sliding Window
Prefix Sum

Gas Station

MEDIUM
46% Acceptance50% Frequency
Array
Greedy

Split Array Largest Sum

HARD
58% Acceptance50% Frequency
Array
Binary Search
Dynamic Programming
Greedy
Prefix Sum

Subarray Sum Equals K

MEDIUM
45% Acceptance50% Frequency
Array
Hash Table
Prefix Sum

Contains Duplicate

EASY
63% Acceptance50% Frequency
Array
Hash Table
Sorting

Minimum Operations to Reduce an Integer to 0

MEDIUM
57% Acceptance50% Frequency
Dynamic Programming
Greedy
Bit Manipulation

Frequency of the Most Frequent Element

MEDIUM
44% Acceptance50% Frequency
Array
Binary Search
Greedy
Sliding Window
Sorting
+1 more

Reverse Nodes in k-Group

HARD
63% Acceptance50% Frequency
Linked List
Recursion

Intersection of Two Linked Lists

EASY
61% Acceptance50% Frequency
Hash Table
Linked List
Two Pointers

Rotate Image

MEDIUM
78% Acceptance50% Frequency
Array
Math
Matrix

Sliding Window Maximum

HARD
48% Acceptance50% Frequency
Array
Queue
Sliding Window
Heap (Priority Queue)
Monotonic Queue

Find Minimum in Rotated Sorted Array

MEDIUM
53% Acceptance50% Frequency
Array
Binary Search

Recover Binary Search Tree

MEDIUM
56% Acceptance50% Frequency
Tree
Depth-First Search
Binary Search Tree
Binary Tree

Valid Parentheses

EASY
42% Acceptance50% Frequency
String
Stack

Longest Substring with At Most K Distinct Characters

MEDIUM
49% Acceptance50% Frequency
Hash Table
String
Sliding Window

Longest Consecutive Sequence

MEDIUM
47% Acceptance50% Frequency
Array
Hash Table
Union Find

Zero Array Transformation III

MEDIUM
55% Acceptance50% Frequency
Array
Greedy
Sorting
Heap (Priority Queue)
Prefix Sum

Combination Sum II

MEDIUM
58% Acceptance50% Frequency
Array
Backtracking

Maximum Difference Between Even and Odd Frequency II

HARD
49% Acceptance50% Frequency
String
Sliding Window
Enumeration
Prefix Sum

Next Greater Element I

EASY
75% Acceptance50% Frequency
Array
Hash Table
Stack
Monotonic Stack

Add Strings

EASY
52% Acceptance50% Frequency
Math
String
Simulation

Maximal Rectangle

HARD
54% Acceptance50% Frequency
Array
Dynamic Programming
Stack
Matrix
Monotonic Stack

3Sum

MEDIUM
37% Acceptance50% Frequency
Array
Two Pointers
Sorting

Maximum Difference Between Even and Odd Frequency I

EASY
61% Acceptance50% Frequency
Hash Table
String
Counting

Search Insert Position

EASY
49% Acceptance50% Frequency
Array
Binary Search

Trapping Rain Water

HARD
65% Acceptance50% Frequency
Array
Two Pointers
Dynamic Programming
Stack
Monotonic Stack

Binary Tree Level Order Traversal

MEDIUM
71% Acceptance50% Frequency
Tree
Breadth-First Search
Binary Tree

Transform Array to All Equal Elements

MEDIUM
32% Acceptance50% Frequency
Array
Greedy

LRU Cache

MEDIUM
45% Acceptance50% Frequency
Hash Table
Linked List
Design
Doubly-Linked List

Next Permutation

MEDIUM
43% Acceptance50% Frequency
Array
Two Pointers

How to Prepare for Microsoft Technical Interviews

1. Master High Frequency DSA

Review the top questions asked in Microsoft coding rounds over the past 3-6 months. Focus on core patterns including Arrays, Hash Tables, Trees, Dynamic Programming, and Graph Traversals.

2. Practice with AI Voice Mock Interviews

Simulate real pressure by practicing voice and video interview loops on Voke with AI calibrated specifically for Microsoft engineering standards and behavioral rubrics.