Filter interviews by
A graph traversal algorithm like Depth First Search (DFS) can be implemented to determine if A and B are friends, and if B and C are friends, subsequently making A and C friends automatically.
Implement a graph where each person is a node and friendships are edges between nodes
Use Depth First Search (DFS) to traverse the graph and check for connections between A and B, and B and C
If both connections exist, then A and C ...
I applied via Company Website and was interviewed in Nov 2024. There were 2 interview rounds.
Leetcode similar coding tests
Testing feasibility involves evaluating an idea's practicality through research, prototyping, and stakeholder feedback.
Conduct market research to understand demand and competition. For example, analyze existing solutions and their user reviews.
Create a prototype or minimum viable product (MVP) to test core functionalities. For instance, develop a basic version of a mobile app.
Gather feedback from potential users or sta...
I applied via Company Website and was interviewed in Nov 2022. There were 3 interview rounds.
Standard Leetcode Medium question.
I applied via LinkedIn and was interviewed before Oct 2022. There were 3 interview rounds.
I appeared for an interview in Jan 2021.
Round duration - 90 minutes
Round difficulty - Hard
Online coding round , 2-3 questions. Level - med-hard
Identify if the provided integer 'N' is a Fibonacci number.
A number is termed as a Fibonacci number if it appears in the Fibonacci sequence, where each number is the sum of...
Check if a given number is a Fibonacci number or not.
Iterate through the Fibonacci sequence until you find a number greater than or equal to the given number.
Check if the given number matches the Fibonacci number found in the sequence.
If the given number matches, output 'YES'; otherwise, output 'NO'.
Your task is to break a board of given dimensions 'L' by 'W' into 'L' * 'W' smaller squares, ensuring the total cost of breaking is minimized.
The first line con...
Minimize cost of breaking a board into smaller squares by optimizing horizontal and vertical cuts.
Iterate through all possible horizontal and vertical cuts to find the minimum cost
Use dynamic programming to store and reuse subproblem solutions
Calculate the cost of breaking the board into smaller squares based on the given dimensions and cut costs
Round duration - 60 Minutes
Round difficulty - Medium
2 interviewers , coding problem, no compilation.
Ninja has started a social networking site called Ninjas Space. The platform consists of ‘N’ users and supports ‘M’ different languages. Users communicate if they know at...
Determine the minimum number of users to teach a common language so all friends can communicate on a social networking site.
Create a graph where users are nodes and friendships are edges.
Find connected components in the graph.
For each connected component, determine the minimum number of users to teach a common language.
Return the sum of minimum users needed for all connected components.
Round duration - 40 minutes
Round difficulty - Medium
CS fundamentals. Tough round. 40 mins interview. 1 interviewer from USA
Round duration - 40 minutes
Round difficulty - Hard
System Design Problem
Design a Facebook-like application for social networking.
User profiles with personal information and photos
News feed displaying posts from friends
Ability to like, comment, and share posts
Friend requests and messaging functionality
Groups and events for community engagement
Tip 1 : Never leave any topic from any chapter / Subject
Tip 2 : Learn to explain your thoughts well
Tip 3 : Learn from previous experiences / interviews / problems asked.
Tip 4 : Atleast 4 projects in Resume
Tip 1 : Atleast 4 projects on Resume
Tip 2 : Do not write false things. You always get caught. Be genuine.
Top trending discussions
I appeared for an interview before Jun 2021.
Round duration - 120 minutes
Round difficulty - Medium
Given an array of integers ARR
of length N
and an integer Target
, your task is to return all pairs of elements such that they add up to the Target
.
The first line ...
Given an array of integers and a target, find all pairs of elements that add up to the target.
Iterate through the array and for each element, check if the target minus the element exists in a hash set.
If it exists, add the pair to the result. If not, add the element to the hash set.
Handle cases where the same element is used twice in a pair.
Return (-1, -1) if no pair is found.
Given a linked list where each node contains two pointers: one pointing to the next node and another random pointer that can point to any node within the list (or ...
Create a deep copy of a linked list with random pointers.
Iterate through the original linked list and create a new node for each node in the list.
Store the mapping of original nodes to new nodes in a hashmap to handle random pointers.
Update the random pointers of new nodes based on the mapping stored in the hashmap.
Return the head of the copied linked list.
Round duration - 60 Minutes
Round difficulty - Medium
Given an arbitrary array arr
consisting of N
non-negative integers where every element appears thrice except for one. Your task is to find the element in the array that appears onl...
Find the element that appears only once in an array where every other element appears thrice.
Use bitwise operations like XOR to find the unique element in linear time complexity.
XOR all elements in the array, the result will be the unique element.
Elements that appear thrice will cancel out each other in XOR operation.
Example: arr = [2, 2, 3, 2], XOR of all elements = 3 which is the unique element.
You are provided with an array or list ARR
containing N
positive integers. Your task is to determine the Next Greater Element (NGE) for each element in the array.
T...
Find the Next Greater Element for each element in an array.
Iterate through the array from right to left
Use a stack to keep track of elements with no greater element to the right
Pop elements from the stack until a greater element is found or stack is empty
Round duration - 60 Minutes
Round difficulty - Medium
Given a Binary Search Tree (BST) of integers, your task is to convert it into a greater sum tree. In the greater sum tree, each node's value should be replaced with the sum...
Convert a Binary Search Tree into a Greater Sum Tree by replacing each node's value with the sum of all nodes' values greater than the current node's value.
Traverse the BST in reverse inorder (right, root, left) to visit nodes in descending order.
Keep track of the running sum of visited nodes' values and update each node's value with this sum.
Recursively apply the above steps to all nodes in the BST.
Example: For input ...
You are given a linked list of N
nodes where each node contains values 0, 1, and 2 exclusively. Your task is to sort the linked list.
The first line contains an...
Sort a linked list containing values 0, 1, and 2 exclusively.
Use three pointers to keep track of nodes with values 0, 1, and 2 separately.
Traverse the linked list and move nodes to their respective positions based on their values.
Finally, concatenate the three lists in the order 0 -> 1 -> 2 to get the sorted linked list.
Round duration - 45 minutes
Round difficulty - Medium
You are provided with a 2-dimensional matrix having N
rows and M
columns, containing only 1s (land) and 0s (water). Your goal is to determine the number of islands in t...
Count the number of islands in a 2D matrix of 1s and 0s.
Use Depth First Search (DFS) or Breadth First Search (BFS) to traverse the matrix and identify connected groups of 1s.
Maintain a visited array to keep track of visited cells to avoid redundant traversal.
Increment the island count each time a new island is encountered.
Consider edge cases like when the matrix is empty or when all cells are water (0s).
Given an N*M matrix filled with integer numbers, determine the maximum sum that can be obtained from a path starting from any cell in the first row to any cell in the last row...
Find the maximum sum that can be obtained from a path in a matrix from the first row to the last row.
Use dynamic programming to keep track of the maximum sum at each cell.
Consider moving down, down-left, and down-right to calculate the maximum sum.
Start from the second row and update the values based on the maximum sum from the row above.
At the end, find the maximum sum in the last row to get the final result.
Tip 1 - Practice variety of questions
Tip 2 - Do atleast 2 projects
Tip 1 : Do good projects
Tip 2 : resume should be one page
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
This round was held during university hours and consisted of 2 coding questions.
Round duration - 120 minutes
Round difficulty - Easy
Make sure you do no cutting and are clear about the approach you'd be following.
Running median of an input stream is the median value of the numbers seen so far in a continuous stream of data.
Maintain two heaps - a max heap for the lower half of the numbers and a min heap for the upper half.
Keep the number of elements in the two heaps balanced or differ by at most 1.
If the total number of elements is odd, the median is the root of the max heap. If even, it is the average of the roots of the two he...
Prepare for company-wise interview questions according to the company in which you are applying. Try to write the code yourself and if got stuck in between then take help from the internet. I recommend you Codezen of Coding Ninjas for practicing Data Structures and Algorithms based questions.
Application resume tips for other job seekersBe sure 100% of what you write in your resume and prepare for that before the interview what is written on resume.
Final outcome of the interviewSelectedI appeared for an interview before Sep 2020.
Round duration - 90 Miinutes
Round difficulty - Medium
First round had MCQ + 2 coding questions. It was held in morning around 11 am. It was held on campus.
You are tasked with directing a robot from the top-left corner of an N*N matrix to a specified point (x, y), delivering a parcel. The robot is restricted to move only on flat a...
Determine if a robot can reach a specified destination in a matrix by moving only downwards or rightwards.
Start at (0,0) and move towards the destination (x, y) only downwards or rightwards.
Check if the path is clear (1) and avoid obstacles (0) while staying within matrix boundaries.
Return true if the robot can reach the destination, false otherwise.
Example: For input matrix [[1, 0, 1], [1, 1, 1], [1, 1, 5]] with desti...
Given an arbitrary array arr
consisting of N
non-negative integers where every element appears thrice except for one. Your task is to find the element in the array that appears onl...
Find the unique element in an array where every element appears thrice except for one.
Use XOR operation to find the unique element.
Iterate through the array and XOR each element to find the unique element.
The XOR operation cancels out elements that appear thrice, leaving only the unique element.
Example: arr = [2, 2, 3, 2], XOR of all elements = 3.
Example: arr = [0, 1, 0, 1, 0, 1, 99], XOR of all elements = 99.
Round duration - 90 Minutes
Round difficulty - Medium
Second Round was held in morning around 10-11 am. There was one interviewer working on his laptop. Interviewer was really helpful and first offered me water and then for a bit talked about himself.
You are tasked with implementing a class BSTIterator
, which is designed to traverse a Binary Search Tree (BST) in the inorder manner. The class must support the following op...
Implement a BSTIterator class to traverse a Binary Search Tree in inorder manner.
Implement a constructor to initialize the iterator with the root of the BST.
Implement next() and hasNext() methods to traverse the BST in inorder.
Implement prev() and hasPrev() methods to access the previous element in the inorder traversal.
Use level-order traversal format to represent the tree input.
Output the inorder traversal of the bin...
Given a binary tree and the values of two distinct nodes, determine the distance between these two nodes in the tree. The distance is defined as the minimum num...
Calculate the distance between two nodes in a binary tree.
Traverse the tree to find the paths from the root to each node
Find the lowest common ancestor of the two nodes
Calculate the distance by adding the distances from the LCA to each node
Tip 1 : Keep talking about what are you thinking
Tip 2 : Don't beat about the bush if don't know the answer just say so
Tip 1 : Only show projects you are confident about
Tip 2 : Basic Web and android projects are also fine
I appeared for an interview before Dec 2020.
Round duration - 90 Minutes
Round difficulty - Medium
2 coding questions and 20 mcq
You are given a grid containing oranges where each cell of the grid can contain one of the three integer values:
Find the minimum time required to rot all fresh oranges in a grid.
Use Breadth First Search (BFS) to simulate the rotting process.
Track the time taken to rot all oranges and return -1 if any fresh oranges remain.
Handle edge cases like no fresh oranges or all oranges already rotten.
Consider using a queue to efficiently process adjacent oranges.
Ensure to update the grid with the new state of oranges after each second.
Given a natural number N
, return the sum of all its proper divisors.
A proper divisor of Y
is defined as a number X
such that X < Y
and Y % X = 0
.
T...
Calculate the sum of proper divisors of a given natural number.
Iterate from 1 to sqrt(N) and check for divisors
If a divisor is found, add it to the sum and also add N/divisor if it is not the same as divisor
Return the sum as the result
Round duration - 45 Minutes
Round difficulty - Medium
Technical interview
Given an array ARR
consisting of non-negative integers, rearrange the numbers to form the largest possible number. The digits within each number cannot be changed.
Rearrange the array elements to form the largest possible number by concatenating them.
Sort the array elements in a custom comparator function to get the largest number.
Convert the sorted array elements to strings and concatenate them to form the final number.
Handle cases where the numbers have the same prefix by comparing the concatenated forms.
Tip 1 : Be clear about whatever you have mentioned in resume, don't mention buzz words, because interviewer can go in depth
Tip 2 : Along with DS and Algo, if you have 3-4 months experience or internship experience, then be ready to answer scenario based technical questions like scaling the application that you developed and design concepts that can be used for improving
Tip 3 : Last but most important tip is to be calm through out the whole process ,don't loose hope if any round didn't go well ,if you have explained your thought process there is still chance to procees to next round so keep preparating for next rounds.
Tip 1 : Keep it one page resume and mention keywords which align with your technical and personal competencies.
Tip 2 : Mention 3-4 projects in the order that , project which you can explain best should be at top,then the next, and so on.
based on 4 interview experiences
Difficulty level
Duration
Software Engineer
8
salaries
| ₹32 L/yr - ₹57 L/yr |
Senior Software Engineer
8
salaries
| ₹50 L/yr - ₹92.8 L/yr |
Project Manager
5
salaries
| ₹12 L/yr - ₹32 L/yr |
Software Developer
4
salaries
| ₹37 L/yr - ₹49.1 L/yr |
Senior Engineer
4
salaries
| ₹34 L/yr - ₹100 L/yr |
Amazon
Flipkart
Indiamart Intermesh
Udaan