MOST COMMON Adobe CODING INTERVIEW QUESTIONS
The 15 most commonly asked adobe interview questions
Determine if the sum of three integers is equal to the given value
Given an array of integers and a value, determine if there are any three integers in the array whose sum equals the given value.
Find the missing number in the array
We are given an array containing ‘n’ distinct numbers taken from the range 0 to ‘n’. Since the array has only ‘n’ numbers out of the total ‘n+1’ numbers, find the missing number.
Add two integers
Given the head pointers of two linked lists where each linked list represents an integer number (each node is a digit), add them and return the resulting linked list.
Copy linked list with arbitrary pointer
Make a deep copy of the given linked list where each node has two pointers: 'next' and 'arbitrary_pointer'.
Connect all siblings
Given the root to a binary tree where each node has an additional pointer called sibling (or next), connect the sibling pointer to the next node in the same level.
Determine if the binary tree is a binary search tree
Given a Binary Tree, figure out whether it's a Binary Search Tree. In a binary search tree, each node's key value is smaller than the key value of all nodes in the right subtree, and are greater than the key values of all nodes in the left subtree i.e. L < N < R.
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
Given a string, find all substrings that are palindromes.
Find the maximum sum of a subarray
Given an array of positive numbers and a positive number ‘k’, find the maximum sum of any contiguous subarray of size ‘k’.
MATH AND STATS
Determine if the number is valid
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.
Given an NxN grid of characters and a dictionary, find all words which can be made from the characters in the grid and are present in the given dictionary. A word can start and end at any character in the grid. The next character must be adjacent to the previous character in any of the directions i.e. up, down, left, right and diagonal. The character at each position in the grid can be used only once while making a word.
Find the minimum spanning tree
Find the minimum spanning tree of a connected, undirected graph with weighted edges.
Implement a LRU cache
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
Merge overlapping intervals
Given a list of intervals, merge all the overlapping intervals to produce a list that has only mutually exclusive intervals.