# Must Do Coding Questions Company-wise

### Companies

- Subarray with given sum
- Maximum Index
- Finding the numbers
- Longest valid Parentheses
- Jumping Numbers
- Connect Nodes at Same Level
- Count BST nodes that lie in a given range
- Implement LRU Cache
- Interleaved Strings
- Find triplets with zero sum
- Egg Dropping Puzzle
- Word Break Problem
- Check if a Binary Tree contains duplicate subtrees of size 2 or more
- Find largest word in dictionary by deleting some characters of given string
- Modular Exponentiation (Power in Modular Arithmetic)

- Subarray with given sum
- Find all pairs with a given sum
- Total Decoding Messages
- Word Boggle
- Activity Selection
- Minimum Depth of a Binary Tree
- Implement strstr
- Multiply two strings
- K-Palindrome
- Find triplets with zero sum
- Largest subset whose all elements are Fibonacci numbers
- Look-and-Say Sequence
- Converting Decimal Number lying between 1 to 3999 to Roman Numerals
- Convert Ternary Expression to Binary Tree
- Maximum Rectangular Area in a Histogram

### Amazon

- K largest elements from a big file or array
- Reverse a Linked List in groups of given size
- Implement a stack with push(), pop() and min() in O(1) time
- Add two numbers represented by linked lists
- Convert a Binary tree to DLL
- Stock span problem
- Next larger element
- Edit distance
- Maximum of all subarrays of size k
- Pythagorean Triplet
- Print a Binary Tree in Vertical Order
- Level order traversal
- Smallest window in a string containing all the characters of another string
- Find the number of islands
- Detect and Remove Loop in a Linked List
- Check if a binary tree is BST or not
- Boolean Parenthesization
- Arrange given numbers to form the biggest number
- Implement LRU Cache
- Maximum difference between node and its ancestor in Binary Tree

### Microsoft

- Key Pair
- Is Binary Number Multiple of 3
- Kadane’s Algorithm
- Missing number in array
- Majority Element
- Search in a Rotated Array
- Check for BST
- Finding middle element in a linked list
- Root to leaf path sum
- Reverse a linked list
- Remove every k’th node
- Merge 2 sorted linked list in reverse order
- Longest Even Length Substring such that Sum of First and Second Half is same
- k largest(or smallest) elements in an array | added Min Heap method
- Write an Efficient Function to Convert a Binary Tree into its Mirror Tree
- Determine if Two Trees are Identical

### Adobe

- Search in a Rotated Array
- Subset Sum Problem
- Reverse words in a given string
- Sort an array of 0s, 1s and 2s
- Minimum number of jumps
- Check for BST
- Root to leaf path sum
- Sum Tree
- Finding middle element in a linked list
- Reverse a linked list
- Level order traversal in spiral form
- Right View of Binary Tree
- Remove duplicate element from sorted Linked List
- Merge Sort for Linked List
- Count set bits in an integer

### Oracle

- 0 – 1 Knapsack Problem
- Search in a matrix
- Power of 2
- Palindrome
- Root to leaf path sum
- Kadane’s Algorithm
- Binary Search
- Implement Queue using Linked List
- Connect Nodes at Same Level
- Remove loop in Linked List
- Implement Stack using Queues
- Implement Queue using Stacks
- Remove duplicate element from sorted Linked List
- Find the first repeating element in an array of integers

### D E Shaw

- Majority Element
- Search in a Rotated Array
- Sum of Middle Elements of two sorted arrays
- Non Repeating Character
- Kadane’s Algorithm
- Intersection of two sorted Linked lists
- Detect Loop in linked list
- Print all nodes that don’t have sibling
- Two Mirror Trees
- Intersection Point in Y Shapped Linked Lists
- Trie | (Insert and Search)
- Implement Queue using Stacks
- Implement Stack using Queues
- Find the number of islands
- Copy Set Bits in Range

### Directi

- Maximum of all subarrays of size k
- Search in a matrix
- Word Boggle
- Jumping Numbers
- Transform String
- Solve the Sudoku
- Find Nth root of M
- Array Pair Sum Divisibility Problem
- Largest zigzag sequence
- Maximum Intervals Overlap
- Max rectangle
- Maximum path sum
- Maximize Dot Product
- Excel Sheet | Part – 1
- Probability of Knight

### MAQ Software

- Sort an array of 0s, 1s and 2s
- Permutations of a given string
- Rotate Array by n elements
- Non Repeating Character
- Nth Fibonacci Number
- Finding middle element in a linked list
- n’th node from end of linked list
- Detect Loop in linked list
- Implement Queue using Stacks
- Find Missing And Repeating
- Find the Closest Element in BST
- Check if a linked list is Circular Linked List
- Reverse a String
- Reverse words in a given string
- Egg Dropping Puzzle

### Yahoo

- First non-repeating character in a stream
- Find median in a stream
- Largest prime factor
- Form coils in a matrix
- Word Boggle
- Largest Product Palindrome
- Surpasser Count
- Return two prime numbers
- Sort a stack
- Three way partitioning
- LRU Cache
- Serialize and Deserialize a Binary Tree
- Split a Circular Linked List into two halves
- Interleaved Strings
- Max Sum without Adjacents

### Accolite

- Count Squares
- Longest Prefix Suffix
- N-Queen Problem
- Coin Change
- Permutations of a given string
- Stock buy and sell
- Longest Palindrome in a String
- Sum of two numbers represented as arrays
- Max sum submatrix
- Maximum sum Rectangle
- Root to leaf path sum
- Lowest Common Ancestor in a Binary Tree
- Level order traversal in spiral form
- Implement Stack using Queues
- n’th node from end of linked list

### Walmart Labs

- Longest consecutive subsequence
- Largest number in K swaps
- k largest elements
- Word Break
- Find the highest occurring digit in prime numbers in a range
- Count all possible paths from top left to bottom right
- Minimum Platforms
- Parenthesis Checker
- Implement LRU Cache
- Josephus Problem
- Top View of Binary Tree
- Intersection of Two Linked Lists
- Alien Dictionary
- Remove Loop in Linked List
- Wildcard Pattern Matching

### Samsung

- Longest Increasing Subsequence
- Next larger element
- Permutations of a given string
- Next greater number set digits
- Finding middle element in a linked list
- Root to leaf path sum
- Detect Loop in linked list
- Left View of Binary Tree
- Implement Queue using Linked List
- Egg Dropping Puzzle
- Total number of possible Binary Search Trees with n keys
- Count number of bits to be flipped to convert A to B
- Implement two stacks in an array
- Given only a pointer/reference to a node to be deleted in a singly linked list, how do you delete it?

### Paytm

- Sort an array of 0s, 1s and 2s
- Reverse words in a given string
- Reverse a linked list
- Reverse a Linked List in groups of given size
- Max Sum without Adjacents
- Mirror Tree
- Flattening a Linked List
- Check for Balanced Tree
- Find the number of islands
- Coin Change
- Count frequencies of all elements in array in O(1) extra space and O(n) time
- Convert array into Zig-Zag fashion
- Find the row with maximum number of 1s
- Maximum Rectangular Area in a Histogram

### Ola Cabs

- Kadane’s Algorithm
- Missing number in array
- Sort an array of 0s, 1s and 2s
- Search in a matrix
- Left View of Binary Tree
- Mirror Tree
- Connect Nodes at Same Level
- K distance from root
- Level order traversal in spiral form
- Non Repeating Character
- Find the number of islands
- Find the character in first string that is present at minimum index in second string
- Maximum difference between two elements such that larger element appears after the smaller number
- Find the element that appears once in sorted array
- Boolean Matrix Problem

### Flipkart

- Kadane’s Algorithm
- 0 – 1 Knapsack Problem
- Inversion of array
- Consecutive 1’s not allowed
- Finding middle element in a linked list
- Get minimum element from stack
- Left View of Binary Tree
- Add two numbers represented by linked lists
- Connect Nodes at Same Level
- Sum of dependencies in a graph
- Maximum of all subarrays of size k
- Possible words from Phone digits
- Reverse Level Order Traversal
- Implement Queue using Stack
- Maximum Width of Tree

### SAP Labs

- Sort an array of 0s, 1s and 2s
- Check if a number is Bleak
- Reverse words in a given string
- Remove Spaces from string
- Second Largest
- Check if a number is power of another number
- Reverse a linked list
- Get minimum element from stack
- BFS traversal of graph
- Find median in a stream of integers
- Quick Sort
- GCD of Array
- LCM And GCD
- Heap Sort
- Bubble Sort

### VMware

- Longest Common Subsequence
- Maximum Index
- Array to BST
- Egg Dropping Puzzle
- K’th smallest element
- Check for BST
- Finding middle element in a linked list
- Reverse a linked list
- Detect Loop in linked list
- Run Length Encoding
- Height of Binary Tree
- Infix to Postfix
- Diameter of Binary Tree
- Mirror Tree
- Boolean Matrix Problem

### Cisco

- Missing number in array
- Reverse words in a given string
- Permutations of a given string
- Array to BST
- Counbt set bits
- Reverse a linked list
- Level order traversal
- Minimum Spanning Tree
- Does array represent Heap
- Kth largest element in a stream
- Escape the jail
- K’th smallest element
- Insertion Sort
- Bubble Sort

### Goldman Sachs

- Reverse words in a given string
- Overlapping rectangles
- Column name from a given column number
- Non Repeating Character
- Total Decoding Messages
- Sum Tree
- Get minimum element from stack
- Flattening a Linked List
- Sort a stack using Recursion
- Intersection Point in Y Shapped Linked Lists
- Stock buy and sell
- Egg Dropping Puzzle
- Check for Balanced Tree
- Check if two arrays are equal or not
- Implement Queue using Stacks

### MakeMyTrip

- Distinct palindromic substrings
- Two water Jug problem
- Minimum Cost Path
- Transpose of Matrix
- Smallest window in a string containing all the characters of another string
- Check Mirror in N-ary tree
- Longest Prefix Suffix
- Maximum Difference
- Nuts and Bolts Problem
- N meetings in one room
- String formation from substring
- Longest Common Subsequence
- Next Permutation
- Trailing zeroes in factorial
- Egg Dropping Puzzle

### Snapdeal

- Fighting the darkness
- Money Division
- Group Anagrams Together
- Pangram Strings
- 0 – 1 Knapsack Problem
- Longest Arithmetic Progression
- Next greater number set digits
- Number of Coins
- Check If two Line segments Intersect
- Two numbers with sum closest to zero
- Parenthesis Checker
- Maximum Rectangular Area in a Histogram
- Smallest Positive missing number
- Find the number of islands
- Reverse a Linked List in groups of given size

### Qualcomm

- Find length of Loop
- Implement strstr
- Min distance between two given nodes of a Binary Tree
- Delete a node from BST
- Left View of Binary Tree
- Intersection Point in Y Shapped Linked Lists
- Check for BST
- Reverse a linked list
- Detect Loop in linked list
- Reverse Bits
- Next Permutation
- Array Subset of another array
- Set Bits
- Find Prime numbers in a range
- Subsequence matching

### Payu

- Reverse each word in a given string
- First non-repeating character in a stream
- Next larger element
- 0 – 1 Knapsack Problem
- Leaders in an array
- Trapping Rain Water
- Pattern Searching
- Implement Atoi
- Lowest Common Ancestor in a Binary Tree
- Level order traversal in spiral form
- Flattening a Linked List
- Finding middle element in a linked list
- Missing number in array
- Kadane’s Algorithm
- Count possible ways to construct buildings

### Intuit

- Element with left side smaller and right side greater
- Find median in a stream
- Product array puzzle
- Count Occurences of Anagrams
- Maximum Sub Array
- Binary Array Sorting
- Sort a Stack
- Find the number of islands
- Remove duplicates from an unsorted linked list
- Implement LRU Cache
- Max Rectangle
- Reverse a linked list
- Pairwise swap elements of a linked list by swapping data
- Find the missing no in string
- Depth First Traversal for a Graph

### Important Links

- Difficulty-wise ordered Coding questions for Interview and Competitive Programming
- Aptitude questions asked in round 1 : Placements Course designed for this purpose.
- MCQs asked from different computer science subjects : Subject-Wise Quizzes
- Interview theory and coding questions of all companies : Company wise all practice questions.
- Interview experiences of all companies : Interview corner.

**GeeksforGeeks Courses:**

## Language Foundation Courses[C Programming / C++ / JAVA / Python]

Learn any programming language from scratch and understand all its fundamentals concepts for a strong programming foundation in the easiest possible manner with help of GeeksforGeeks Language Foundation Courses –

C Programming |Java Foundation|Python Foundation|C++ Foundation.

Complete Interview PreparationGet fulfilled all your interview preparation needs at a single place with the

Complete Interview Preparation Coursethat provides you all the required stuff to prepare for any product-based, service-based, or start-up company at the most affordable prices.

DSA Self PacedStart learning Data Structures and Algorithms to prepare for the interviews of top IT giants like Microsoft, Amazon, Adobe, etc. with

DSA Self-Paced Coursewhere you will get to learn and master DSA from basic to advanced level and that too at your own pace and convenience.