Skip to main content
Google logo

Google Interview Questions

Curated technical problems, DSA questions & coding interview rounds

Target Role

Software Engineer (SDE I / II)

Problem Count

100+ Verified

Assessment Type

DSA & System Design

Preparation Mode

Live AI Interactive

Two Sum

EASY
56% Acceptance100% Frequency
Array
Hash Table

Palindrome Number

EASY
59% Acceptance71% Frequency
Math

Add Two Numbers

MEDIUM
46% Acceptance70% Frequency
Linked List
Math
Recursion

Best Time to Buy and Sell Stock

EASY
55% Acceptance62% Frequency
Array
Dynamic Programming

Longest Common Prefix

EASY
45% Acceptance62% Frequency
String
Trie

Longest Consecutive Sequence

MEDIUM
47% Acceptance62% Frequency
Array
Hash Table
Union Find

Trapping Rain Water

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

Longest Substring Without Repeating Characters

MEDIUM
37% Acceptance60% Frequency
Hash Table
String
Sliding Window

Roman to Integer

EASY
65% Acceptance60% Frequency
Hash Table
Math
String

Median of Two Sorted Arrays

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

Merge Intervals

MEDIUM
49% Acceptance60% Frequency
Array
Sorting

3Sum

MEDIUM
37% Acceptance57% Frequency
Array
Two Pointers
Sorting

4Sum

MEDIUM
38% Acceptance57% Frequency
Array
Two Pointers
Sorting

Zigzag Conversion

MEDIUM
52% Acceptance57% Frequency
String

Valid Parentheses

EASY
42% Acceptance53% Frequency
String
Stack

Top K Frequent Words

MEDIUM
59% Acceptance53% Frequency
Array
Hash Table
String
Trie
Sorting
+3 more

Single Number

EASY
76% Acceptance53% Frequency
Array
Bit Manipulation

Container With Most Water

MEDIUM
58% Acceptance53% Frequency
Array
Two Pointers
Greedy

Remove Duplicates from Sorted Array

EASY
60% Acceptance53% Frequency
Array
Two Pointers

Next Permutation

MEDIUM
43% Acceptance53% Frequency
Array
Two Pointers

Sliding Window Maximum

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

Pascal's Triangle

EASY
77% Acceptance53% Frequency
Array
Dynamic Programming

Diameter of Binary Tree

EASY
64% Acceptance50% Frequency
Tree
Depth-First Search
Binary Tree

Number of Visible People in a Queue

HARD
71% Acceptance50% Frequency
Array
Stack
Monotonic Stack

Find Peak Element

MEDIUM
47% Acceptance50% Frequency
Array
Binary Search

Longest Palindromic Substring

MEDIUM
36% Acceptance50% Frequency
Two Pointers
String
Dynamic Programming

Russian Doll Envelopes

HARD
37% Acceptance50% Frequency
Array
Binary Search
Dynamic Programming
Sorting

Set Matrix Zeroes

MEDIUM
61% Acceptance50% Frequency
Array
Hash Table
Matrix

Move Zeroes

EASY
63% Acceptance50% Frequency
Array
Two Pointers

Word Break

MEDIUM
48% Acceptance50% Frequency
Array
Hash Table
String
Dynamic Programming
Trie
+1 more

Number of Islands

MEDIUM
62% Acceptance50% Frequency
Array
Depth-First Search
Breadth-First Search
Union Find
Matrix

First Missing Positive

HARD
41% Acceptance50% Frequency
Array
Hash Table

Best Time to Buy and Sell Stock II

MEDIUM
70% Acceptance45% Frequency
Array
Dynamic Programming
Greedy

String to Integer (atoi)

MEDIUM
19% Acceptance45% Frequency
String

Minimum Window Substring

HARD
45% Acceptance45% Frequency
Hash Table
String
Sliding Window

Group Anagrams

MEDIUM
71% Acceptance45% Frequency
Array
Hash Table
String
Sorting

Range Module

HARD
44% Acceptance45% Frequency
Design
Segment Tree
Ordered Set

Longest Increasing Subsequence

MEDIUM
58% Acceptance45% Frequency
Array
Binary Search
Dynamic Programming

N-Queens

HARD
73% Acceptance45% Frequency
Array
Backtracking

Add Two Integers

EASY
88% Acceptance45% Frequency
Math

Basic Calculator

HARD
46% Acceptance45% Frequency
Math
String
Stack
Recursion

LRU Cache

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

Merge Strings Alternately

EASY
82% Acceptance45% Frequency
Two Pointers
String

Text Justification

HARD
48% Acceptance39% Frequency
Array
String
Simulation

Maximal Rectangle

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

Majority Element

EASY
66% Acceptance39% Frequency
Array
Hash Table
Divide and Conquer
Sorting
Counting

Subarray Sum Equals K

MEDIUM
45% Acceptance39% Frequency
Array
Hash Table
Prefix Sum

Lowest Common Ancestor of a Binary Tree

MEDIUM
67% Acceptance39% Frequency
Tree
Depth-First Search
Binary Tree

Peak Index in a Mountain Array

MEDIUM
68% Acceptance39% Frequency
Array
Binary Search

Search in Rotated Sorted Array

MEDIUM
43% Acceptance39% Frequency
Array
Binary Search

Pow(x, n)

MEDIUM
37% Acceptance39% Frequency
Math
Recursion

Binary Tree Maximum Path Sum

HARD
41% Acceptance39% Frequency
Dynamic Programming
Tree
Depth-First Search
Binary Tree

Apply Substitutions

MEDIUM
79% Acceptance39% Frequency
Array
Hash Table
String
Depth-First Search
Breadth-First Search
+2 more

Letter Combinations of a Phone Number

MEDIUM
64% Acceptance39% Frequency
Hash Table
String
Backtracking

Largest Rectangle in Histogram

HARD
47% Acceptance39% Frequency
Array
Stack
Monotonic Stack

Merge Two Sorted Lists

EASY
67% Acceptance39% Frequency
Linked List
Recursion

Happy Number

EASY
58% Acceptance39% Frequency
Hash Table
Math
Two Pointers

Find Minimum in Rotated Sorted Array

MEDIUM
53% Acceptance39% Frequency
Array
Binary Search

Merge Sorted Array

EASY
53% Acceptance39% Frequency
Array
Two Pointers
Sorting

Sort Colors

MEDIUM
68% Acceptance39% Frequency
Array
Two Pointers
Sorting

Fibonacci Number

EASY
73% Acceptance39% Frequency
Math
Dynamic Programming
Recursion
Memoization

Valid Sudoku

MEDIUM
62% Acceptance39% Frequency
Array
Hash Table
Matrix

Decode String

MEDIUM
61% Acceptance39% Frequency
String
Stack
Recursion

Reverse Linked List

EASY
79% Acceptance39% Frequency
Linked List
Recursion

Find Words Containing Character

EASY
91% Acceptance39% Frequency
Array
String

Create Hello World Function

EASY
82% Acceptance39% Frequency
Data Structures
Algorithms

Rotate Image

MEDIUM
78% Acceptance39% Frequency
Array
Math
Matrix

Max Consecutive Ones

EASY
62% Acceptance39% Frequency
Array

LFU Cache

HARD
47% Acceptance39% Frequency
Hash Table
Linked List
Design
Doubly-Linked List

Power of Two

EASY
48% Acceptance31% Frequency
Math
Bit Manipulation
Recursion

Max Consecutive Ones III

MEDIUM
66% Acceptance31% Frequency
Array
Binary Search
Sliding Window
Prefix Sum

Escape the Spreading Fire

HARD
36% Acceptance31% Frequency
Array
Binary Search
Breadth-First Search
Matrix

Squares of a Sorted Array

EASY
73% Acceptance31% Frequency
Array
Two Pointers
Sorting

Burst Balloons

HARD
61% Acceptance31% Frequency
Array
Dynamic Programming

Climbing Stairs

EASY
54% Acceptance31% Frequency
Math
Dynamic Programming
Memoization

Longest Palindrome by Concatenating Two Letter Words

MEDIUM
54% Acceptance31% Frequency
Array
Hash Table
String
Greedy
Counting

Maximum Subarray

MEDIUM
52% Acceptance31% Frequency
Array
Divide and Conquer
Dynamic Programming

Triangle Judgement

EASY
74% Acceptance31% Frequency
Database

Min Stack

MEDIUM
56% Acceptance31% Frequency
Stack
Design

Logger Rate Limiter

EASY
77% Acceptance31% Frequency
Hash Table
Design
Data Stream

Reorder List

MEDIUM
63% Acceptance31% Frequency
Linked List
Two Pointers
Stack
Recursion

Zero Array Transformation I

MEDIUM
54% Acceptance31% Frequency
Array
Prefix Sum

Search Insert Position

EASY
49% Acceptance31% Frequency
Array
Binary Search

Koko Eating Bananas

MEDIUM
49% Acceptance31% Frequency
Array
Binary Search

Rotate Array

MEDIUM
43% Acceptance31% Frequency
Array
Math
Two Pointers

Find All Duplicates in an Array

MEDIUM
76% Acceptance31% Frequency
Array
Hash Table

Meeting Rooms II

MEDIUM
52% Acceptance31% Frequency
Array
Two Pointers
Greedy
Sorting
Heap (Priority Queue)
+1 more

Meeting Rooms III

HARD
44% Acceptance31% Frequency
Array
Hash Table
Sorting
Heap (Priority Queue)
Simulation

Snapshot Array

MEDIUM
37% Acceptance31% Frequency
Array
Hash Table
Binary Search
Design

Path With Maximum Minimum Value

MEDIUM
54% Acceptance31% Frequency
Array
Binary Search
Depth-First Search
Breadth-First Search
Union Find
+2 more

Search Suggestions System

MEDIUM
65% Acceptance31% Frequency
Array
String
Binary Search
Trie
Sorting
+1 more

Same Tree

EASY
65% Acceptance31% Frequency
Tree
Depth-First Search
Breadth-First Search
Binary Tree

Course Schedule

MEDIUM
49% Acceptance31% Frequency
Depth-First Search
Breadth-First Search
Graph
Topological Sort

Reverse Integer

MEDIUM
30% Acceptance31% Frequency
Math

Number of Provinces

MEDIUM
69% Acceptance31% Frequency
Depth-First Search
Breadth-First Search
Union Find
Graph

Painting a Grid With Three Different Colors

HARD
79% Acceptance31% Frequency
Dynamic Programming

Merge k Sorted Lists

HARD
57% Acceptance31% Frequency
Linked List
Divide and Conquer
Heap (Priority Queue)
Merge Sort

Reverse Nodes in k-Group

HARD
63% Acceptance31% Frequency
Linked List
Recursion

Separate Squares I

MEDIUM
38% Acceptance31% Frequency
Array
Binary Search

Daily Temperatures

MEDIUM
67% Acceptance31% Frequency
Array
Stack
Monotonic Stack

How to Prepare for Google Technical Interviews

1. Master High Frequency DSA

Review the top questions asked in Google 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 Google engineering standards and behavioral rubrics.