Filter interviews by
Find the leftmost node in the same level as a given node in a binary tree.
Traverse the tree level by level using BFS
For each level, keep track of the leftmost node encountered
Return the leftmost node at the same level as the given node
Determine if connections between points in groups are planar or non-planar without overlaps.
Planar graphs can be drawn on a plane without edges crossing.
Non-planar graphs require edges to cross when drawn on a plane.
Example of a planar graph: A triangle connecting three points.
Example of a non-planar graph: K5 (complete graph with 5 vertices) cannot be drawn without crossings.
Use Kuratowski's theorem to check for ...
Insert an element into a sorted circular linked list.
Find the correct position to insert the element based on its value
Update the pointers of the previous and next nodes to include the new node
Handle special cases such as inserting at the beginning or end of the list
Example: Inserting 5 into a list with values 1, 3, 4, 6, 7 would result in 1, 3, 4, 5, 6, 7
Use exponentiation by squaring algorithm to find nth power of a number in shortest computational time.
Use recursion to divide the power by 2 and multiply the base accordingly
If power is odd, multiply the base with the result of recursive call
If power is negative, take reciprocal of base and make power positive
Handle edge cases like power=0 and base=0 or 1
Time complexity is O(log n)
What people are saying about Microsoft Corporation
Find the nth largest number in a binary tree
Traverse the tree in-order and store the values in an array
Return the (n-1)th index of the sorted array in descending order
Use a max heap to keep track of the largest n elements
The given linked list needs to be inverted in pairs of two nodes.
Iterate through the linked list, swapping every two adjacent nodes.
Keep track of the previous node to update the next pointers correctly.
Handle the edge cases of odd number of nodes or empty list.
The question asks to add two numbers represented as linked lists and return the sum as a linked list.
Traverse both linked lists simultaneously, adding the corresponding digits and carrying over the carry.
Create a new linked list to store the sum digits.
Handle cases where one linked list is longer than the other.
Consider cases where the sum has an additional carry digit at the end.
Prove that given 5 points in a plane, there will be at least two points such that their midpoint is an integer.
Consider the x and y coordinates of the 5 points.
If any two points have the same x and y coordinates, their midpoint will be an integer.
If not, consider the differences between the x and y coordinates of each pair of points.
If any two pairs have differences that are both even or both odd, their midpoints ...
The function ring() calculates the number of blocks of both types based on sensor state changes.
Create a variable to keep track of the number of 49 cm blocks
Create another variable to keep track of the number of 50 cm blocks
Initialize both variables to 0
Whenever the sensor changes state, increment the corresponding block variable
Return the count of both block types as an array of strings
Implement a GUI to display a file structure using a linked list of nodes representing files and directories.
Each node has properties: ID, parent ID, name, and number of children.
The linked list maintains the order: parent directories appear before their children.
To display children, traverse the linked list and check for matching parent IDs.
Example: For a parent node with ID 1, find all nodes with parent ID 1 to d...
LeetCode , hard questions on dynamic programming, graphs, and more.
DSA, Cn, os, DBMS, ML
I applied via LinkedIn and was interviewed in Jul 2024. There were 3 interview rounds.
It was bsed on DP, Trees and Graphs
Optimizing code for reduced time complexity by using efficient algorithms and data structures.
Use efficient data structures like hash tables, binary search trees, or priority queues.
Avoid nested loops and try to reduce the number of iterations.
Utilize dynamic programming or memoization to store and reuse intermediate results.
Consider using bitwise operations for certain calculations.
Optimize recursive functions by elim...
I appeared for an interview in Feb 2025, where I was asked the following questions.
DSA, Graph, DP, Arrays
I applied via Referral and was interviewed in Apr 2024. There were 4 interview rounds.
OA Test with 2 medium level questions
Find the kth largest element in an array of integers using efficient algorithms.
Use a max-heap to extract the largest elements efficiently. Example: For array [3, 2, 1, 5, 6, 4] and k=2, return 5.
Alternatively, use quickselect algorithm for average O(n) time complexity. Example: In the same array, quickselect can find the 2nd largest.
Sorting the array and accessing the kth largest directly is simple but O(n log n). Exa...
Count distinct islands in a grid of '1's (land) and '0's (water) using DFS or BFS.
Use Depth-First Search (DFS) or Breadth-First Search (BFS) to explore the grid.
Mark visited land cells to avoid counting them multiple times.
Each time you start a new DFS/BFS from an unvisited land cell, increment the island count.
Example: For grid [['1', '1', '0'], ['0', '1', '0'], ['0', '0', '1']], there are 2 islands.
I applied via Referral and was interviewed in Apr 2024. There were 2 interview rounds.
2 problem related to graphs and dynamic programming 45min I was given to solve I was able to solve both of them and got shortlisted for the next round.
I have a strong technical background, excellent problem-solving skills, and a passion for software development.
I have a Bachelor's degree in Computer Science and 5 years of experience in software development.
I have successfully completed multiple projects using various programming languages such as Java, Python, and JavaScript.
I am a quick learner and always eager to expand my knowledge and skills in the field of softw...
I applied via Campus Placement and was interviewed in Aug 2024. There was 1 interview round.
I am a passionate software developer with experience in Java, Python, and web development.
Experienced in Java, Python, and web development technologies
Strong problem-solving skills
Team player with excellent communication skills
1 hr wide varitey of question
A graph is a data structure that consists of nodes (vertices) connected by edges.
Nodes represent entities and edges represent relationships between entities
Graphs can be directed or undirected
Common graph algorithms include depth-first search and breadth-first search
2 easy level machine coding round.
A logger captures and stores application events for debugging and monitoring purposes.
Log Levels: Define levels like DEBUG, INFO, WARN, ERROR, and FATAL for categorizing logs.
Output Formats: Support multiple formats (e.g., JSON, plain text) for flexibility.
Log Rotation: Implement log rotation to manage file sizes and prevent disk overflow.
Asynchronous Logging: Use asynchronous methods to avoid blocking application perf...
Some of the top questions asked at the Microsoft Corporation Software Developer interview -
The duration of Microsoft Corporation Software Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 30 interview experiences
Difficulty level
Duration
based on 92 reviews
Rating in categories
Software Engineer
2.5k
salaries
| ₹24.9 L/yr - ₹44 L/yr |
Senior Software Engineer
1.4k
salaries
| ₹37.5 L/yr - ₹75.7 L/yr |
Software Engineer2
1.2k
salaries
| ₹33 L/yr - ₹60 L/yr |
Software Developer
1.1k
salaries
| ₹23.9 L/yr - ₹40 L/yr |
Support Engineer
608
salaries
| ₹14.4 L/yr - ₹24.7 L/yr |
Amazon
Deloitte
TCS