Filter interviews by
Be the first one to contribute and help others!
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Medium
You are provided with a 2D array or list containing 'N' rows and 'M' columns, filled with 1s and 0s. Here, 1 indicates land, and 0 indicates water.
Your task is to ide...
Count the number of islands in a 2D matrix filled with 1s and 0s.
Iterate through the matrix and perform depth-first search (DFS) to find connected islands.
Use a visited array to keep track of visited cells to avoid redundant calculations.
Increment the island count whenever a new island is encountered.
Consider all eight directions (horizontal, vertical, and diagonal) while exploring the island.
Handle edge cases like out...
You are provided with a Singly Linked List having 'N' nodes, where each node contains a single digit.
Your task is to return a node 'X', which serves as the he...
Return a node representing the head of a new Linked List with the sum of the 1st and 2nd half of the given Linked List.
Split the Linked List into two halves
Reverse the 2nd half of the Linked List
Add the corresponding digits from both halves while considering carry
Create a new Linked List with the sum digits
Round duration - 60 minutes
Round difficulty - Medium
You are given an array arr
of length N
. For each element in the array, find the next greater element (NGE) that appears to the right. If there is no such greater ele...
The task is to find the next greater element for each element in an array to its right, if no greater element exists, return -1.
Use a stack to keep track of elements for which the next greater element is not found yet.
Iterate through the array from right to left, popping elements from the stack until a greater element is found.
Store the next greater element for each element in a separate array.
If the stack is empty aft...
Round duration - 60 Minutes
Round difficulty - Hard
You are given a non-empty string without spaces, referred to as 'sentence', and a list of non-empty strings representing a dictionary. Your task is to construct and return all...
Given a sentence and a dictionary, construct and return all possible sentences by inserting spaces to form words from the dictionary.
Use backtracking to generate all possible combinations of words from the dictionary to form sentences.
Check if a substring of the sentence matches any word in the dictionary, if so, recursively call the function with the remaining substring.
Continue this process until the entire sentence ...
Given a string str
composed solely of the characters "{", "}", "(", ")", "[", and "]", determine whether the parentheses are balanced.
The first line contains ...
Check if given string of parentheses is balanced or not.
Use a stack to keep track of opening parentheses and pop when a closing parenthesis is encountered.
If stack is empty at the end and all parentheses are matched, the string is balanced.
If stack is not empty at the end or mismatched parentheses are encountered, the string is not balanced.
Round duration - 60 minutes
Round difficulty - Easy
Design a local transport system similar to BMTC
Introduce a fleet of buses covering various routes within the city
Implement a smart card system for easy payment and tracking
Include different types of buses like regular, AC, and Volvo for passenger comfort
Have designated bus stops with real-time information on bus arrivals
Offer discounted fares for students and senior citizens
Round duration - 60 minutes
Round difficulty - Easy
Tip 1 : Practice a lot.
Tip 2 : Focus on system design
Tip 3 : Focus on amazon Leadership principles.
Tip 1: Mention relevant details for job you are applying.
Tip 2: Be objective and concise.
Find sum of all numbers formed from root to leaf path in a binary tree
Traverse the binary tree using DFS
At each leaf node, add the number formed from root to leaf path to a sum variable
Return the sum variable
Time complexity: O(n)
Example: For a binary tree with root value 1, left child 2 and right child 3, the sum would be 12 + 13 = 25
Given a string, print all possible strings that can be made by placing spaces (zero or one) in between them.
Use recursion to generate all possible combinations of spaces
For each recursive call, either add a space or don't add a space between the current character and the next character
Base case is when there are no more characters left to add spaces between
Time complexity is O(2^n) where n is the length of the string
Preorder traversal without recursion
Use a stack to keep track of nodes
Push right child first and then left child onto stack
Pop top of stack and print value
Repeat until stack is empty
Find longest continuous patch on a 12 km road with updates in patches
Maintain a variable to keep track of current patch length
Update the variable whenever a new patch is added
Maintain a variable to keep track of longest patch so far
Compare current patch length with longest patch length and update if necessary
Use a sorted data structure like a binary search tree to store the patches for efficient search
Time complexity: ...
Find median of an unsorted array.
Sort the array and find the middle element
Use quickselect algorithm to find the median in O(n) time
If the array is small, use brute force to find the median
Find 'k' elements closest to a given number from a stream of characters.
Use a priority queue to keep track of closest elements.
Update the queue as new characters come in.
Return the 'k' closest elements from the queue.
Check if a given linked list is a palindrome.
Traverse the linked list and store the values in an array.
Compare the first and last elements of the array, then move towards the center.
If all elements match, the linked list is a palindrome.
Alternatively, use two pointers to find the middle of the linked list and reverse the second half.
Compare the first half with the reversed second half to check for a palindrome.
I appeared for an interview before May 2021.
Round duration - 45 Minutes
Round difficulty - Easy
Given an integer N
representing the number of pairs of parentheses, find all the possible combinations of balanced parentheses using the given number of pairs.
Generate all possible combinations of balanced parentheses for a given number of pairs.
Use recursion to generate all possible combinations of balanced parentheses.
Keep track of the number of open and close parentheses used in each combination.
Terminate recursion when the number of open and close parentheses used equals the given number of pairs.
Round duration - 45 Minutes
Round difficulty - Easy
You are given a binary tree of integers. Your task is to print the boundary nodes of this binary tree in an anti-clockwise direction starting from the ro...
Print the boundary nodes of a binary tree in an anti-clockwise direction starting from the root node.
Traverse the left boundary nodes from top to bottom
Traverse the leaf nodes from left to right
Traverse the right boundary nodes from bottom to top
Handle cases where nodes are null (-1)
Print the boundary nodes in the specified order
Round duration - 45 Minutes
Round difficulty - Easy
Given a binary tree, the task is to print its bottom view from left to right. Assume the left and the right child nodes make a 45-degree angle with their paren...
The task is to print the bottom view of a binary tree from left to right.
Traverse the binary tree in level order and keep track of the horizontal distance of each node from the root.
For each horizontal distance, update the node value in a map to get the bottom view nodes.
Print the values of the map in sorted order of horizontal distance to get the bottom view sequence.
Round duration - 45 minutes
Round difficulty - Easy
Bar raiser
Yes, I can design a parking lot using LLD and a tiny URL service using HLD.
For designing a parking lot using LLD, we can create classes like ParkingLot, ParkingSpot, Vehicle, etc. with their respective attributes and methods.
For designing a tiny URL service using HLD, we can focus on scalability, fault tolerance, and performance. We can use techniques like sharding, caching, load balancing, etc.
In the parking lot LLD, ...
Tip 1 : Prepare 1-2 examples for each Leadership Principles
Tip 2 : Prepare questions from the latest interview experiences
Tip 1 : Concise, without errors
Tip 2 : Highlight years of experience
I appeared for an interview in Aug 2021.
Round duration - 45 minutes
Round difficulty - Medium
Technical Interview round that lasted for about 45 minutes. Questions were based on Java, Java design Patterns and OOPS Concepts.
Static methods in interfaces are methods that can be called without creating an instance of the interface implementation.
Static methods in interfaces were introduced in Java 8.
They are used for providing utility methods that are related to the interface but do not require an instance of the implementing class.
Static methods in interfaces cannot be overridden by implementing classes.
Example: interface MyInterface { stat...
Java 8 was needed to introduce new features like lambda expressions, streams, and default methods.
Introduction of lambda expressions for functional programming
Streams API for processing collections in a functional style
Default methods in interfaces for backward compatibility
Improved performance with the introduction of the Nashorn JavaScript engine
Date and Time API for better handling of date and time operations
There are multiple ways to create a singleton pattern in Java, including using static initialization, lazy initialization, and enum.
Using static initialization: Create a private static instance of the class and a public static method to return that instance.
Lazy initialization: Create a private static instance of the class and a public static method to check if the instance is null before creating it.
Using enum: Create...
Round duration - 60 minutes
Round difficulty - Medium
Technical Interview round that lasted for about 45 minutes. Questions were based on Spring boot and Microservices Concepts.
Bridge Pattern decouples abstraction from implementation, while Adapter Pattern adapts an interface to another.
Bridge Pattern separates abstraction and implementation using composition, while Adapter Pattern adapts an interface to another without changing its original structure.
Bridge Pattern allows for changes in both abstraction and implementation independently, while Adapter Pattern allows incompatible interfaces to...
Difference between @RestController and @Controller in Spring Boot
1. @Controller is used to create web MVC controllers while @RestController is used to create RESTful web services.
2. @Controller returns the view to be rendered while @RestController returns the object and data is written directly to the HTTP response as JSON or XML.
3. @RestController is a specialized version of @Controller that includes @Controller and @...
Spring is a framework for building Java applications, while Spring Boot is an extension that simplifies the setup and configuration.
Spring is a comprehensive framework for building Java applications, providing features like dependency injection, aspect-oriented programming, and more.
Spring Boot is an extension of the Spring framework that aims to simplify the setup and configuration of Spring applications.
Spring Boot i...
Monolithic architecture is a single-tiered software application where all components are tightly coupled, while microservices architecture is a distributed approach where the application is broken down into smaller, loosely coupled services.
Monolithic architecture has a single codebase and database, while microservices have multiple smaller services with their own codebase and database.
Monolithic applications are harde...
Round duration - 30 minutes
Round difficulty - Easy
This was a typical HR round with some standard Behavioral questions
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I applied via Recruitment Consulltant and was interviewed before Apr 2021. There were 2 interview rounds.
2 coding questions
Diameter of a binary tree and bfs and dfs questions
Data structure and algorithms
I appeared for an interview in Oct 2020.
Round duration - 60 mins
Round difficulty - Medium
3 Questions were asked : 2- Trees and 1- Stack.
Interviewer was not receptive at all, I think this was a stress interview.
Given a binary tree with 'N' nodes, determine if it is a Binary Search Tree (BST). Return true
if the tree is a BST, otherwise return false
.
Validate if a given binary tree is a Binary Search Tree (BST) or not.
Check if the left subtree of a node contains only nodes with values less than the node's value.
Check if the right subtree of a node contains only nodes with values greater than the node's value.
Ensure that both the left and right subtrees are also binary search trees.
Traverse the tree in-order and check if the elements are in sorted order.
Use a recurs...
Given a binary tree with 'N' nodes, transform it into a Greater Tree. In this transformation, each node's value should be updated to the sum of its original value and...
Convert a binary tree into a Greater Tree by updating each node's value to the sum of its original value and the values of all nodes greater than or equal to it.
Traverse the tree in reverse inorder (right, root, left) to update the nodes' values.
Keep track of the sum of nodes visited so far to update each node's value.
Recursively update the node's value by adding the sum of greater nodes to it.
You are given a string STR
containing only the characters "{", "}", "(", ")", "[", and "]". Your task is to determine if the parentheses in the string are balanced.
Th...
Check if the given string containing only parentheses is balanced or not.
Use a stack to keep track of opening parentheses.
Iterate through the string and push opening parentheses onto the stack.
When a closing parenthesis is encountered, pop from the stack and check if it matches the corresponding opening parenthesis.
If at the end the stack is empty, return 'YES' else return 'NO'.
Round duration - 60 mins
Round difficulty - Hard
2 Coding Questions were asked, both were of Medium to Hard Difficulty.
You are given a multi-level linked list containing 'N' nodes. Each node has 'next' and 'child' pointers that may or may not point to other nodes. Your task is to flatten th...
Flatten a multi-level linked list into a single linked list by rearranging the pointers.
Traverse the linked list and whenever a node has a child, flatten the child list and append it after the current node.
Update the 'next' and 'child' pointers accordingly while flattening the list.
Continue this process until all nodes are rearranged into a single linked list.
Given an array/list ARR
of size N
, representing an elevation map where each element ARR[i]
denotes the elevation of the i-th
bar. Your task is to calculate and print ...
Calculate the total amount of rainwater that can be trapped between given elevations in an elevation map.
Use two-pointer approach to keep track of left and right boundaries.
Calculate the trapped water by finding the minimum of left_max and right_max for each bar.
Subtract the current bar's height from the minimum of left_max and right_max to get the trapped water.
Keep updating the left_max and right_max as you iterate t...
Round duration - 90 minutes
Round difficulty - Medium
Timing : It was late night.
How the interviewer was? He was very tired and I had to lead the discussion.
1 System Design Question was asked, had to provide - HLD, LLD, APIs.
Round duration - 60 minutes
Round difficulty - Medium
Timing : Afternoon
How was the environment? Home
Interviewer : Hiring Manager
Discussed about past Projects, challenges faced, disagreements with manager, why looking for job switch, leadership principle questions were asked.
Round duration - 60 minutes
Round difficulty - Medium
Timing - Afternoon
How was the environment? Home
How the interviewer was? Very Helpful Interviewer
Bar raiser Round - Coding + System Design + Leadership principle
Tip 1 : 250 Leetcode ( Easy- 70, Medium- 150, Hard- 30)
Tip 2 : Don't underestimate importance of good projects on your Resume.
Tip 3 : Be Confident.
Tip 1: Resume should not be more than 1 page.
Tip 2: Have Keywords on Resume that match Job descriptions.
I appeared for an interview in Apr 2021.
Round duration - 60 Minutes
Round difficulty - Medium
Timing: 10AM-11AM
Interviewer was quite supportive and helpful.
Environment was normal as usual and it was morning time
Round duration - 60 Minutes
Round difficulty - Medium
Timing: 11AM-12PM
The interviewer was SDE2
He was checking the code for edge cases and was hinting if required
Ninja has been tasked with implementing a priority queue using a heap data structure. However, he is currently busy preparing for a tournament and has requested yo...
Implement a priority queue using a heap data structure with push, pop, getMaxElement, and isEmpty functions.
Implement a priority queue using a max heap data structure.
Use the provided class structure and complete the push, pop, getMaxElement, and isEmpty functions.
For push operation, insert the element into the heap and maintain the heap property.
For pop operation, remove the largest element from the heap.
For getMaxEle...
Ninja owns an electronic shop and possesses 'N' bulbs. To verify the quality of the bulbs, Ninja performs a unique technique. After 'N' rounds of this process, bulbs that rem...
Determine the number of good quality bulbs remaining after 'N' rounds of a unique technique.
Start with all bulbs on in the first round
Toggle every 'i' bulb in 'i' round
Count the bulbs that remain on after 'N' rounds
Round duration - 60 Minutes
Round difficulty - Medium
Timing: 6PM-7PM
The interviewer was not interactive and didn't gave any feedback whatsoever.
It was Hiring Manager Round
Interviewer was Software Development Manager at Amazon
You are given two sorted arrays of distinct integers, ARR1
and ARR2
. If there is a common element in both arrays, you can switch from one array to the other.
Your task...
Find the maximum sum by traversing through common elements in two sorted arrays.
Start with the array containing the smaller first common element
Switch arrays at common elements to maximize the sum
Continue adding elements until the end of the arrays
Tip 1 : Focus on internals of Data structure on how it actually works
Tip 2 : Implement the Data Structure from scratch, later you can use the inbuilt packages no problem but you must know the implementation
Tip 3 : Understand System Design concepts
Tip 1 : Highlight your contributions you made and how it impacted the business and be real
Tip 2 : Mention the improvement figures like x% reduction in page load size, improved SEO ranking by x figure, reduce memory usage by y%
Senior Software Engineer
30
salaries
| ₹31 L/yr - ₹49.5 L/yr |
Software Engineer
11
salaries
| ₹14.4 L/yr - ₹31.6 L/yr |
Senior Test Engineer
7
salaries
| ₹14 L/yr - ₹32 L/yr |
Software Developer
5
salaries
| ₹17 L/yr - ₹31 L/yr |
Software Quality Engineer
4
salaries
| ₹8.5 L/yr - ₹14.8 L/yr |
Accenture
Capgemini
HCLTech
Teleperformance