most common Google coding interview questions

the 15 most asked questions in a Google interview 

 

Arrays

Sum of two values

Problem Statement

​

Given an array of integers and a value, determine if there are any two integers in the array whose sum is equal to the given value.

Move zeros to the left

Problem Statement

​

Move all zeros to the left of an array while maintaining its order.

 

linked lists

Delete node with given key

Problem statement

​

You are given the head of a linked list and a key. You have to delete the node that contains this given key.

Copy linked list with arbitrary pointer

Problem statement

​

You are given a linked list where the node has two pointers. The first is the regular ‘next’ pointer. The second pointer is called ‘arbitrary_pointer’ and it can point to any node in the linked list.

 

Your job is to write code to make a deep copy of the given linked list. Here, deep copy means that any operations on the original list (inserting, modifying and removing) should not affect the copied list.

 

trees

Mirror binary trees

Problem statement

​

Given the root node of a binary tree, swap the 'left' and 'right' children for each node. 

Check if two binary trees are identical

Problem statement

​

Given the roots of two binary trees, determine if these trees are identical or not.

 

strings

String segmentation

Problem statement

​

Given a dictionary of words and an input string tell whether the input string can be completely segmented into dictionary words.

Find all palindrome substrings

Problem statement

​

Given a string find all non-single letter substrings that are palindromes.

 

dynamic programming

Largest sum subarray

Problem statement

​

Given an array, find the contiguous subarray with the largest sum.

 

Math and stats

Determine if the number is valid

Problem statement

​

Given an input string, determine if it makes a valid number or not. For simplicity, assume that white spaces are not present in the input.

 

backtracking

Print balanced brace combinations 

Problem statement

​

Print all braces combinations for a given value 'N' so that they are balanced.

 

Graphs

Minimum spanning tree

Problem statement

​

Find the minimum spanning tree of a connected, undirected graph with weighted edges.

 

design

Implement a LRU cache

Problem statement

​

Least Recently Used (LRU) is a common caching strategy. It defines the policy to evict elements from the cache to make room for new elements when the cache is full, meaning it discards the least recently used items first.

 

sorting and searching

Find the high and low index

Problem statement

​

Given a sorted array of integers, return the low and high index of the given key. Return -1 if not found. The array length can be in the millions with many duplicates.

Merge overlapping intervals

Problem statement

​

You are given an array (list) of interval pairs as input where each interval has a start and end timestamp. The input array is sorted by starting timestamps. You are required to merge overlapping intervals and return output array (list).

have you been asked a question that is not included here in your google interview? 

​

please share with us:

map_icon.png

Need help preparing for the interview?

​

Check out the Definitive Interview Prep Roadmap,

written and reviewed by real hiring managers.