Microsoft Corporation
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via LinkedIn and was interviewed in Oct 2024. There were 2 interview rounds.
Abcdef jssu ksye ksyd kahe jeheb
I applied via Campus Placement and was interviewed in Jan 2024. There was 1 interview round.
3 coding questions, mostly focused on dp, graphs strings and arrays, it was medium to hard level
I applied via LinkedIn and was interviewed in Mar 2023. There were 3 interview rounds.
Reverse a tree using DSA involves traversing the tree in a specific order and swapping the left and right child nodes.
Start by traversing the tree in post-order or level-order traversal.
Swap the left and right child nodes of each node as you traverse the tree.
Continue until all nodes have been visited and their children swapped.
Microsoft Corporation interview questions for designations
Efficiently check if a number is present in an array where each element differs by 1.
Use binary search to find the element in the array
Calculate the difference between the middle element and the first element
If the difference is equal to the index of the middle element minus the index of the first element, then the left half of the array is consecutive
If the difference is not equal, then the right half of the array is ...
Microsoft Excel
Add more chart types (p1)
Improve collaboration features (p2)
Enhance data analysis tools (p3)
Integrate with more external data sources (p4)
Improve error handling and debugging (p5)
Program to rearrange shuffled 16 squares to get original big square
Create a 4x4 matrix to represent the big square and fill it with shuffled squares
Loop through the matrix and check if each square is in the correct position
If a square is not in the correct position, swap it with the square in the correct position
Repeat until all squares are in the correct position
The first declaration casts i to int pointer and dereferences it, while the second declaration casts the address of i to int pointer and dereferences it.
The first declaration assumes i is already an int pointer.
The second declaration takes the address of i and casts it to an int pointer.
The first declaration may cause a segmentation fault if i is not an int pointer.
The second declaration may cause unexpected behavior i...
Minimum comparisons needed to find median in unsorted array of size n
For odd n, median is the middle element. For even n, median is the average of middle two elements
Minimum comparisons needed for odd n is (n-1)/2. For even n, it is n/2
Various sorting algorithms can be used to find median in an unsorted array
Time complexity to find an element in an alternatively sorted array.
The time complexity will be O(log n) using binary search.
Check the middle element and compare with the target element.
If the middle element is greater than the target, search in the left half of the array.
If the middle element is smaller than the target, search in the right half of the array.
Repeat until the target element is found or the array is exha
Get interview-ready with Top Microsoft Corporation Interview Questions
Find an index in array where sum of elements on left side is equal to sum of elements on right side.
Loop through array and calculate sum of all elements
Then loop through array again and check if sum of elements on left side is equal to sum of elements on right side
Return the index if found, else return -1
Find minimum number of jumps required to reach end of array with max moves in right direction at each index.
Use dynamic programming approach to solve the problem
Maintain an array to store minimum number of jumps required to reach each index
Traverse the array and update the minimum number of jumps for each index
Return the minimum number of jumps required to reach the end of array
Tournament tree is a binary tree where each node represents a match between two players/teams.
Tournament tree is used in sports tournaments to determine the winner.
The leaf nodes represent the players/teams and the internal nodes represent the matches.
The winner of each match is the node with the higher score.
Code can be written using a recursive function to traverse the tree and determine the winner.
Find 2 maximum elements in array in O(n+log(n)) comparison
Use divide and conquer approach
Divide array into two halves
Recursively find max elements in each half
Compare the two max elements to find the overall max elements
Find row with maximum 1s in a sorted 2D array of 0s and 1s.
Use binary search to find the first occurrence of 1 in each row.
Calculate the number of 1s in each row using the index found in step 1.
Keep track of the row with maximum number of 1s.
Time complexity: O(m log n), where m is the number of rows and n is the number of columns.
Top trending discussions
I applied via Campus Placement and was interviewed in Nov 2024. There were 2 interview rounds.
4 sections verbal logical aptitude and coding(in C)
Creating patterns of triangle and diamond using characters
For triangle pattern, use nested loops to print spaces and characters in each row
For diamond pattern, divide the diamond into two triangles and print accordingly
Examples: Triangle pattern - * ** *** Diamond pattern - * *** ***** *** *
posted on 12 Nov 2024
I applied via Approached by Company and was interviewed in May 2024. There was 1 interview round.
To make an array of strings unique, count the number of duplicate elements and increment them accordingly.
Iterate through the array and keep track of the frequency of each element.
For each duplicate element, increment it to make the array unique.
Return the total number of increment operations needed.
Sum all numbers formed from root to leaf paths in a binary tree
Traverse the tree from root to leaf nodes, keeping track of the current number formed
Add the current number to the sum when reaching a leaf node
Recursively explore left and right subtrees
It consisted of both technical programming and theoretical concepts. C++ and SQL
Sorting algorithms differ in their approach to sorting elements in an array.
Bubble Sort - compares adjacent elements and swaps them if they are in the wrong order
Merge Sort - divides the array into two halves, sorts them, and then merges them
Quick Sort - picks a pivot element and partitions the array around the pivot
Selection Sort - repeatedly selects the minimum element and swaps it with the current element
Insertion S...
I applied via Referral and was interviewed in Feb 2024. There were 2 interview rounds.
Interview experience
based on 5 reviews
Rating in categories
Software Engineer
1.9k
salaries
| ₹13.1 L/yr - ₹51 L/yr |
Senior Software Engineer
1k
salaries
| ₹25 L/yr - ₹85 L/yr |
Software Engineer2
981
salaries
| ₹20 L/yr - ₹72 L/yr |
Consultant
604
salaries
| ₹13 L/yr - ₹42 L/yr |
Support Engineer
570
salaries
| ₹7.6 L/yr - ₹30 L/yr |
Amazon
Deloitte
TCS