Problem database last updated: June 20, 2025

YYahoo logo

Yahoo Coding Interview Questions

100 problems · 25 Easy, 63 Medium, 12 Hard · Ranked #10 of 458

Difficulty breakdown

25 Easy

25% · avg 23%

63 Medium

63% · avg 59%

12 Hard

12% · avg 18%

Top topics

array
50%
string
24%
dynamic-programming
22%
two-pointers
19%
hash-table
17%
math
13%

Interview profile

Based on 100 reported problems, Yahoo interviews are in line with industry averages - 12% Hard vs 18% overall. The majority (63%) of questions are Medium difficulty, which is typical for companies that want to see solid fundamentals without excessive trick questions.

Compared to the industry average, Yahoo puts unusual emphasis on binary-search-tree (3% of problems, 2.7x the industry average), merge-sort (2% of problems, 2.7x the industry average), binary-tree (10% of problems, 2x the industry average). If you're short on time, these are the categories to double down on.

The most common topics are array (50%), string (24%), dynamic-programming (22%), two-pointers (19%). Problems below are sorted by frequency, the ones at the top are asked most often.

All 100 problems

Two Sum

Solve

Given an array of integers nums and an integer target, return the indices of the two numbers that add up to target.

EasyVery Likely
arrayhash-map

Longest Substring Without Repeating Characters

Solve

Given a string s, find the length of the longest substring without duplicate characters.

MediumVery Likely
hash-tablestringsliding-window

Container With Most Water

Solve

You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the ith line are (i, 0) and (i, height[i]).

MediumLikely
arraytwo-pointersgreedy

Roman to Integer

Solve

Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M.

EasyLikely
hash-tablemathstring

Maximum Depth of Binary Tree

Solve

Given the root of a binary tree, return its maximum depth.

EasyLikely
treedepth-first-searchbreadth-first-search

3Sum

Solve

Given an integer array nums, return all the triplets [nums[i], nums[j], nums[k]] such that i != j, i != k, and j != k, and nums[i] + nums[j] + nums[k] == 0.

MediumLikely
arraytwo-pointerssorting

Median of Two Sorted Arrays

Solve

Given two sorted arrays nums1 and nums2 of size m and n respectively, return the median of the two sorted arrays.

HardLikely
arraybinary-searchdivide-and-conquer

Remove Duplicates from Sorted Array

Solve

Given an integer array nums sorted in non-decreasing order, remove the duplicates in-place such that each unique element appears only once. The relative order o...

EasyLikely
arraytwo-pointers

Add Two Numbers

Solve

You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order, and each of their nodes contains a sing...

MediumLikely
linked-listmathrecursion

Merge Sorted Array

Solve

You are given two integer arrays nums1 and nums2, sorted in non-decreasing order, and two integers m and n, representing the number of elements in nums1 and num...

EasyLikely
arraytwo-pointerssorting

LRU Cache

Solve

Design a data structure that follows the constraints of a Least Recently Used (LRU) cache.

MediumLikely
hash-tablelinked-listdesign

Longest Palindromic Substring

Solve

Given a string s, return the longest palindromic substring in s.

MediumLikely
two-pointersstringdynamic-programming

Word Break

Solve

Given a string s and a dictionary of strings wordDict, return true if s can be segmented into a space-separated sequence of one or more dictionary words.

MediumLikely
arrayhash-tablestring

Best Time to Buy and Sell Stock

Solve

You are given an array prices where prices[i] is the price of a given stock on the ith day.

EasyLikely
arraydynamic-programming

Rotate Image

Solve

You are given an n x n 2D matrix representing an image, rotate the image by 90 degrees (clockwise).

MediumLikely
arraymathmatrix

Valid Parentheses

Solve

Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

EasyLikely
stringstack

Linked List Cycle

Solve

Given head, the head of a linked list, determine if the linked list has a cycle in it.

EasyLikely
hash-tablelinked-listtwo-pointers

Climbing Stairs

Solve

You are climbing a staircase. It takes n steps to reach the top.

EasyLikely
mathdynamic-programmingmemoization

Palindrome Number

Solve

Given an integer x, return true if x is a palindrome, and false otherwise.

EasyLikely
math

Merge Two Sorted Lists

Solve

You are given the heads of two sorted linked lists list1 and list2.

EasyLikely
linked-listrecursion

Longest Common Prefix

Solve

Write a function to find the longest common prefix string amongst an array of strings.

EasyLikely
arraystringtrie

Generate Parentheses

Solve

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

MediumLikely
stringdynamic-programmingbacktracking

Merge Intervals

Solve

Given an array of intervals where intervals[i] = [starti, endi], merge all overlapping intervals, and return an array of the non-overlapping intervals that cove...

MediumLikely
arraysorting

Jump Game

Solve

You are given an integer array nums. You are initially positioned at the array's first index, and each element in the array represents your maximum jump length...

MediumLikely
arraydynamic-programminggreedy

Spiral Matrix

Solve

Given an m x n matrix, return all elements of the matrix in spiral order.

MediumLikely
arraymatrixsimulation

Trapping Rain Water

Solve

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

HardLikely
arraytwo-pointersdynamic-programming

Remove Element

Solve

Given an integer array nums and an integer val, remove all occurrences of val in nums in-place. The order of the elements may be changed. Then return the number...

EasyLikely
arraytwo-pointers

Search Insert Position

Solve

Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it would be if it were ins...

EasyLikely
arraybinary-search

Group Anagrams

Solve

Given an array of strings strs, group the anagrams together. You can return the answer in any order.

MediumLikely
arrayhash-tablestring

Combination Sum

Solve

Given an array of distinct integers candidates and a target integer target, return a list of all unique combinations of candidates where the chosen numbers sum...

MediumLikely
arraybacktracking

Count and Say

Solve

The count-and-say sequence is a sequence of digit strings defined by the recursive formula:

MediumLikely
string

Reverse Integer

Solve

Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1...

MediumLikely
math

Plus One

Solve

You are given a large integer represented as an integer array digits, where each digits[i] is the ith digit of the integer. The digits are ordered from most sig...

EasyLikely
arraymath

Find First and Last Position of Element in Sorted Array

Solve

Given an array of integers nums sorted in non-decreasing order, find the starting and ending position of a given target value.

MediumLikely
arraybinary-search

Find the Index of the First Occurrence in a String

Solve

Given two strings needle and haystack, return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

EasyLikely
two-pointersstringstring-matching

Subsets

Solve

Given an integer array nums of unique elements, return all possible subsets (the power set).

MediumLikely
arraybacktrackingbit-manipulation

Letter Combinations of a Phone Number

Solve

Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent. Return the answer in any order.

MediumSometimes
hash-tablestringbacktracking

Divide Two Integers

Solve

Given two integers dividend and divisor, divide two integers without using multiplication, division, and mod operator.

MediumSometimes
mathbit-manipulation

Maximum Subarray

Solve

Given an integer array nums, find the subarray with the largest sum, and return its sum.

MediumSometimes
arraydivide-and-conquerdynamic-programming

Set Matrix Zeroes

Solve

Given an m x n integer matrix matrix, if an element is 0, set its entire row and column to 0's.

MediumSometimes
arrayhash-tablematrix

Sqrt(x)

Solve

Given a non-negative integer x, return the square root of x rounded down to the nearest integer. The returned integer should be non-negative as well.

EasySometimes
mathbinary-search

Pascal's Triangle

Solve

Given an integer numRows, return the first numRows of Pascal's triangle.

EasySometimes
arraydynamic-programming

Pow(x, n)

Solve

Implement pow(x, n), which calculates x raised to the power n (i.e., xn).

MediumSometimes
mathrecursion

Valid Palindrome

Solve

A phrase is a palindrome if, after converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, it reads the same forwa...

EasySometimes
two-pointersstring

Next Permutation

Solve

A permutation of an array of integers is an arrangement of its members into a sequence or linear order.

MediumSometimes
arraytwo-pointers

Binary Tree Level Order Traversal

Solve

Given the root of a binary tree, return the level order traversal of its nodes' values. (i.e., from left to right, level by level).

MediumSometimes
treebreadth-first-searchbinary-tree

Regular Expression Matching

Solve

Given an input string s and a pattern p, implement regular expression matching with support for '.' and '' where:

HardSometimes
stringdynamic-programmingrecursion

Largest Rectangle in Histogram

Solve

Given an array of integers heights representing the histogram's bar height where the width of each bar is 1, return the area of the largest rectangle in the his...

HardSometimes
arraystackmonotonic-stack

Zigzag Conversion

Solve

The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better...

MediumSometimes
string

Validate Binary Search Tree

Solve

Given the root of a binary tree, determine if it is a valid binary search tree (BST).

MediumSometimes
treedepth-first-searchbinary-search-tree

Single Number

Solve

Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.

EasySometimes
arraybit-manipulation

Search a 2D Matrix

Solve

You are given an m x n integer matrix matrix with the following two properties:

MediumSometimes
arraybinary-searchmatrix

Recover Binary Search Tree

Solve

You are given the root of a binary search tree (BST), where the values of exactly two nodes of the tree were swapped by mistake. Recover the tree without changi...

MediumSometimes
treedepth-first-searchbinary-search-tree

Longest Consecutive Sequence

Solve

Given an unsorted array of integers nums, return the length of the longest consecutive elements sequence.

MediumSometimes
arrayhash-tableunion-find

Search in Rotated Sorted Array

Solve

There is an integer array nums sorted in ascending order (with distinct values).

MediumSometimes
arraybinary-search

Length of Last Word

Solve

Given a string s consisting of words and spaces, return the length of the last word in the string.

EasySometimes
string

Gas Station

Solve

There are n gas stations along a circular route, where the amount of gas at the ith station is gas[i].

MediumSometimes
arraygreedy

3Sum Closest

Solve

Given an integer array nums of length n and an integer target, find three integers at distinct indices in nums such that the sum is closest to target.

MediumSometimes
arraytwo-pointerssorting

Permutations

Solve

Given an array nums of distinct integers, return all the possible permutations. You can return the answer in any order.

MediumSometimes
arraybacktracking

Sort Colors

Solve

Given an array nums with n objects colored red, white, or blue, sort them in-place so that objects of the same color are adjacent, with the colors in the order...

MediumSometimes
arraytwo-pointerssorting

Binary Tree Preorder Traversal

Solve

Given the root of a binary tree, return the preorder traversal of its nodes' values.

EasySometimes
stacktreedepth-first-search

Unique Paths

Solve

There is a robot on an m x n grid. The robot is initially located at the top-left corner (i.e., grid[0][0]). The robot tries to move to the bottom-right corner...

MediumSometimes
mathdynamic-programmingcombinatorics

Integer to Roman

Solve

Seven different symbols represent Roman numerals with the following values:

MediumSometimes
hash-tablemathstring

Remove Duplicates from Sorted Array II

Solve

Given an integer array nums sorted in non-decreasing order, remove some duplicates in-place such that each unique element appears at most twice. The relative or...

MediumSometimes
arraytwo-pointers

Valid Sudoku

Solve

Determine if a 9 x 9 Sudoku board is valid. Only the filled cells need to be validated according to the following rules:

MediumSometimes
arrayhash-tablematrix

String to Integer (atoi)

Solve

Implement the myAtoi(string s) function, which converts a string to a 32-bit signed integer.

MediumSometimes
string

4Sum

Solve

Given an array nums of n integers, return an array of all the unique quadruplets [nums[a], nums[b], nums[c], nums[d]] such that:

MediumSometimes
arraytwo-pointerssorting

Remove Nth Node From End of List

Solve

Given the head of a linked list, remove the nth node from the end of the list and return its head.

MediumSometimes
linked-listtwo-pointers

Symmetric Tree

Solve

Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center).

EasySometimes
treedepth-first-searchbreadth-first-search

Sudoku Solver

Solve

Write a program to solve a Sudoku puzzle by filling the empty cells.

HardSometimes
arrayhash-tablebacktracking

Best Time to Buy and Sell Stock II

Solve

You are given an integer array prices where prices[i] is the price of a given stock on the ith day.

MediumSometimes
arraydynamic-programminggreedy

Maximum Product Subarray

Solve

Given an integer array nums, find a subarray that has the largest product, and return the product.

MediumSometimes
arraydynamic-programming

N-Queens

Solve

The n-queens puzzle is the problem of placing n queens on an n x n chessboard such that no two queens attack each other.

HardSometimes
arraybacktracking

Simplify Path

Solve

You are given an absolute path for a Unix-style file system, which always begins with a slash '/'. Your task is to transform this absolute path into its simplif...

MediumSometimes
stringstack

Same Tree

Solve

Given the roots of two binary trees p and q, write a function to check if they are the same or not.

EasySometimes
treedepth-first-searchbreadth-first-search

Unique Paths II

Solve

You are given an m x n integer array grid. There is a robot initially located at the top-left corner (i.e., grid[0][0]). The robot tries to move to the bottom-r...

MediumSometimes
arraydynamic-programmingmatrix

Unique Binary Search Trees

Solve

Given an integer n, return the number of structurally unique BST's (binary search trees) which has exactly n nodes of unique values from 1 to n.

MediumSometimes
mathdynamic-programmingtree

Maximal Rectangle

Solve

Given a rows x cols binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's and return its area.

HardSometimes
arraydynamic-programmingstack

Palindrome Partitioning

Solve

Given a string s, partition s such that every substring of the partition is a palindrome. Return all possible palindrome partitioning of s.

MediumSometimes
stringdynamic-programmingbacktracking

Insert Interval

Solve

You are given an array of non-overlapping intervals intervals where intervals[i] = [starti, endi] represent the start and the end of the ith interval and interv...

MediumSometimes
array

Longest Valid Parentheses

Solve

Given a string containing just the characters '(' and ')', return the length of the longest valid (well-formed) parentheses substring.

HardSometimes
stringdynamic-programmingstack

Minimum Path Sum

Solve

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right, which minimizes the sum of all numbers along its path.

MediumSometimes
arraydynamic-programmingmatrix

Minimum Window Substring

Solve

Given two strings s and t of lengths m and n respectively, return the minimum window substring of s such that every character in t (including duplicates) is inc...

HardSometimes
hash-tablestringsliding-window

Interleaving String

Solve

Given strings s1, s2, and s3, find whether s3 is formed by an interleaving of s1 and s2.

MediumSometimes
stringdynamic-programming

Flatten Binary Tree to Linked List

Solve

Given the root of a binary tree, flatten the tree into a "linked list":

MediumSometimes
linked-liststacktree

Reverse Linked List II

Solve

Given the head of a singly linked list and two integers left and right where left <= right, reverse the nodes of the list from position left to position right,...

MediumSometimes
linked-list

Reverse Nodes in k-Group

Solve

Given the head of a linked list, reverse the nodes of the list k at a time, and return the modified list.

HardSometimes
linked-listrecursion

Edit Distance

Solve

Given two strings word1 and word2, return the minimum number of operations required to convert word1 to word2.

MediumSometimes
stringdynamic-programming

Reorder List

Solve

You are given the head of a singly linked-list. The list can be represented as:

MediumSometimes
linked-listtwo-pointersstack

Merge k Sorted Lists

Solve

You are given an array of k linked-lists lists, each linked-list is sorted in ascending order.

HardSometimes
linked-listdivide-and-conquerheap-priority-queue

Construct Binary Tree from Preorder and Inorder Traversal

Solve

Given two integer arrays preorder and inorder where preorder is the preorder traversal of a binary tree and inorder is the inorder traversal of the same tree, c...

MediumSometimes
arrayhash-tabledivide-and-conquer

Single Number II

Solve

Given an integer array nums where every element appears three times except for one, which appears exactly once. Find the single element and return it.

MediumSometimes
arraybit-manipulation

Word Ladder

Solve

A transformation sequence from word beginWord to word endWord using a dictionary wordList is a sequence of words beginWord -> s1 -> s2 -> ... -> sk such that:

HardSometimes
hash-tablestringbreadth-first-search

Sort List

Solve

Given the head of a linked list, return the list after sorting it in ascending order.

MediumSometimes
linked-listtwo-pointersdivide-and-conquer

Find Minimum in Rotated Sorted Array

Solve

Suppose an array of length n sorted in ascending order is rotated between 1 and n times. For example, the array nums = [0,1,2,4,5,6,7] might become:

MediumSometimes
arraybinary-search

Copy List with Random Pointer

Solve

A linked list of length n is given such that each node contains an additional random pointer, which could point to any node in the list, or null.

MediumSometimes
hash-tablelinked-list

Clone Graph

Solve

Given a reference of a node in a connected undirected graph.

MediumSometimes
hash-tabledepth-first-searchbreadth-first-search

Pascal's Triangle II

Solve

Given an integer rowIndex, return the rowIndexth (0-indexed) row of the Pascal's triangle.

EasySometimes
arraydynamic-programming

Rotate List

Solve

Given the head of a linked list, rotate the list to the right by k places.

MediumSometimes
linked-listtwo-pointers

Search in Rotated Sorted Array II

Solve

There is an integer array nums sorted in non-decreasing order (not necessarily with distinct values).

MediumSometimes
arraybinary-search

How often are these problems asked?

Frequency scores are based on crowdsourced interview reports. A higher score means the problem has been reported more often in recent Yahoo interviews.

Very Likely

75-100%

Likely

50-74%

Sometimes

25-49%

Rare

0-24%

Preparing for your Yahoo coding interview

Yahoo interviews focus heavily on array, string, dynamic-programming problems. If you're short on time, these are the categories to prioritize. The problems on this page are sorted by frequency, so start from the top and work your way down.

Beyond solving problems, practice explaining your approach. Yahoo interviewers care about your thought process - how you break down a problem, consider edge cases, and evaluate tradeoffs between solutions. A clean O(n) solution you can explain clearly beats an O(log n) solution you can't articulate.

Looking for more companies? Browse all 458 companies in our directory, or sharpen your fundamentals with our free data structure visualizers and AI-powered DSA tutor.

Frequently Asked Questions

What coding problems does Yahoo ask in interviews?add

Yahoo has been reported to ask 100 distinct coding problems. The most common topics are array, string, dynamic-programming. 25 are Easy difficulty, 63 are Medium, and 12 are Hard. Problems are sorted by frequency - the ones at the top are asked most often.

How hard are Yahoo coding interviews?add

Based on 100 reported problems, Yahoo interviews are in line with industry averages - 12% Hard vs 18% overall. 63% of questions are Medium difficulty. Focus on the high-frequency Medium problems first, then work through the Hard ones.

How should I prepare for a Yahoo coding interview?add

Start with the highest-frequency problems listed on this page. Focus on the core topics: array, string, dynamic-programming. Practice solving them under time pressure and explaining your approach out loud. Mock interviews with AI can simulate the real experience.

Other companies to explore

Ready to ace your Yahoo interview?

Simulate a real Yahoo coding interview with an AI interviewer. Get a scorecard with specific feedback on your problem-solving, code quality, and communication.

Simulate a Yahoo interview with AIarrow_forward