Prepare Interview

Mock Exams

Make Homepage

## Freshers / Beginner level questions & answers

### Ques 1. Fibonacci Series

The Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones.

Example:

`Fib(0) = 0, Fib(1) = 1, Fib(n) = Fib(n-1) + Fib(n-2)`

### Ques 2. Maximum Subarray Sum

Find the contiguous subarray with the largest sum.

Example:

`Input: [-2, 1, -3, 4, -1, 2, 1, -5, 4], Output: 6 (subarray [4, -1, 2, 1])`

### Ques 3. Unique Paths

A robot is located at the top-left corner of a m x n grid. It can only move either down or right. Find the number of unique paths to reach the bottom-right corner.

Example:

`Input: m = 3, n = 7, Output: 28`

## Intermediate / 1 to 5 years experienced level questions & answers

### Ques 4. Longest Increasing Subsequence (LIS)

Find the length of the longest subsequence of a given sequence such that all elements of the subsequence are sorted in increasing order.

Example:

`Input: [10, 22, 9, 33, 21, 50, 41, 60, 80], Output: 6`

### Ques 5. Coin Change Problem

Given a set of coin denominations, find the number of ways to make a certain amount of change.

Example:

`Input: coins=[1, 2, 5], amount=5, Output: 4`

### Ques 6. 0/1 Knapsack Problem

Given weights and values of items, find the maximum value that can be obtained by selecting a subset of items with total weight not exceeding a given limit.

Example:

`Weights: [2, 3, 4, 5], Values: [3, 4, 5, 6], Knapsack Capacity: 5, Output: 11`

### Ques 7. Longest Common Subsequence (LCS)

Given two sequences, find the length of the longest subsequence present in both of them.

Example:

`Input: ABCBDAB, BDCAB, Output: 4 (BCAB)`

### Ques 8. Rod Cutting Problem

Given a rod of length n and prices at which different lengths of the rod can be sold, find the maximum value obtainable by cutting up the rod.

Example:

`Lengths: [1, 2, 3, 4, 5], Prices: [1, 5, 8, 9, 10], Rod Length: 4, Output: 10`

### Ques 9. Maximum Product Subarray

Find the contiguous subarray within an array (containing at least one number) that has the largest product.

Example:

`Input: [2, 3, -2, 4], Output: 6 (subarray [2, 3])`

### Ques 10. Decode Ways

A message containing letters from A-Z can be encoded into numbers. Given a non-empty string containing only digits, determine the total number of ways to decode it.

Example:

`Input: "226", Output: 3 ("22" can be decoded as "BB", "2" + "2" + "6" can be decoded as "VVF")`

### Ques 11. Word Break Problem

Given a non-empty string and a dictionary of words, determine if the string can be segmented into a space-separated sequence of one or more dictionary words.

Example:

`Input: s = "leetcode", wordDict = ["leet", "code"], Output: true`

### Ques 12. Minimum Path Sum

Given a grid filled with non-negative numbers, find a path from the top-left to the bottom-right corner that minimizes the sum of numbers along the path.

Example:

`Grid: [[1,3,1],[1,5,1],[4,2,1]], Output: 7 (1 -> 3 -> 1 -> 1 -> 1)`

### Ques 13. Longest Palindromic Substring

Given a string, find the longest substring which is a palindrome.

Example:

`Input: "babad", Output: "bab" or "aba"`

### Ques 14. Partition Equal Subset Sum

Given a non-empty array containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.

Example:

`Input: [1, 5, 11, 5], Output: true (subset sums: [1, 5, 5] and [11])`

### Ques 15. Maximum Length of Repeated Subarray

Given two integer arrays, find the maximum length of a common subarray of both arrays.

Example:

`Input: A = [1,2,3,2,1], B = [3,2,1,4,7], Output: 3 ([3, 2, 1])`

### Ques 16. Palindromic Substrings

Given a string, find the total number of palindromic substrings.

Example:

`Input: "abc", Output: 3 ("a", "b", "c")`

### Ques 17. Minimum Cost Path

Given a 2D grid, find the minimum cost path from the top-left corner to the bottom-right corner.

Example:

`Grid: [[1,3,1],[1,5,1],[4,2,1]], Output: 7 (1 -> 3 -> 1 -> 1 -> 1)`

### Ques 18. Arithmetic Slices

A sequence of numbers is called arithmetic if it consists of at least three elements and if the difference between any two consecutive elements is the same. Return the total number of arithmetic slices in the array.

Example:

`Input: [1, 2, 3, 4], Output: 3 (three arithmetic slices: [1, 2, 3], [2, 3, 4], [1, 2, 3, 4])`

### Ques 19. Maximal Square

Given a 2D binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area.

Example:

`Matrix: [[1, 0, 1, 0, 0], [1, 0, 1, 1, 1], [1, 1, 1, 1, 1], [1, 0, 0, 1, 0]], Output: 4`

### Ques 20. Paint House

There are a row of n houses, each house can be painted with one of the three colors: red, blue, or green. The cost of painting each house with a certain color is different. You have to paint all the houses such that no two adjacent houses have the same color.

Example:

`Costs: [[17, 2, 17], [16, 16, 5], [14, 3, 19]], Output: 10 (paint the first house blue, the second house green, and the third house blue)`

### Ques 21. Number of Dice Rolls With Target Sum

You have d dice, and each die has f faces numbered 1 to f. Return the number of possible ways (out of f^d total ways) to roll the dice so the sum of the face-up numbers equals target.

Example:

`d = 2, f = 6, target = 7, Output: 6 (possible rolls: [1,6], [2,5], [3,4], [4,3], [5,2], [6,1])`

## Experienced / Expert level questions & answers

### Ques 22. Edit Distance

Given two strings, find the minimum number of operations required to convert one string into the other.

Example:

`Input: word1 = "horse", word2 = "ros", Output: 3`

### Ques 23. Palindrome Partitioning

Given a string, partition it into as many palindromic substrings as possible.

Example:

`Input: aab, Output: [['a', 'a', 'b'], ['aa', 'b']]`

### Ques 24. Count Palindromic Subsequences

Given a string, find the number of distinct palindromic subsequences of it.

Example:

`Input: "bccb", Output: 6 ("b", "c", "c", "b", "ccb", "bccb")`

### Ques 25. Longest Increasing Path in a Matrix

Given an integer matrix, find the length of the longest increasing path.

Example:

`Matrix: [[9,9,4],[6,6,8],[2,1,1]], Output: 4 (9 -> 6 -> 8 -> 1)`

### Ques 26. RegularExpression Matching

Implement regular expression matching with support for '.' and '*'.

Example:

`Input: s = "aa", p = "a*", Output: true`

### Ques 27. Maximum Profit with K Transactions

Given an array representing stock prices, find the maximum profit that can be obtained with at most k transactions.

Example:

`Input: [3, 2, 6, 5, 0, 3], k = 2, Output: 7`

### Ques 28. Count Distinct Subsequences

Given a string, find the number of distinct non-empty subsequences of the string.

Example:

`Input: "abc", Output: 7 ("a", "b", "c", "ab", "ac", "bc", "abc")`

### Ques 29. Word Break II

Given a non-empty string and a dictionary of words, return all possible sentences formed by concatenating words from the dictionary.

Example:

`Input: s = "catsanddog", wordDict = ["cat", "cats", "and", "sand", "dog"], Output: ["cats and dog", "cat sand dog"]`

### Ques 30. Word Ladder II

Given two words (beginWord and endWord), and a dictionary's word list, find all shortest transformation sequences from beginWord to endWord.

Example:

`beginWord = "hit", endWord = "cog", wordList = ["hot","dot","dog","lot","log","cog"], Output: [["hit","hot","dot","dog","cog"],["hit","hot","lot","log","cog"]]`