Skip to content
Related Articles

Related Articles

Microsoft Office India Interview experience | Set 170 (2 Years Exp)
  • Difficulty Level : Expert
  • Last Updated : 10 Apr, 2018

Round 1:
Validate an infix arithmetic expression string (braces and brackets are similar to parentheses): (1+2)*{[90*3]-[67+8-9]}

Proposed Ans: Djikstra’s Shunting yard

Interviewer’s Ans: Parser Tree

Round 2:

Given a shelf of books, categorise those books according to any particular property of a book e.g. Alphabetic increasing author’s name, category, date of publish etc. The value of the property of the book has to be fetched from an external service and the call is expensive.



Constraints: O(1) space, the calls to get the priority of a book should be as minimized as possible.

Proposed Ans: Quick sort with a priority map associated with the property of the book, a modified partitioning scheme where every element’s priority is fetched once, total of nlogn calls.

Constraint variation: Minimum swaps.

Proposed Ans:

1. Selection sort with O(n^2) time and O(1) space. – n swaps

2. Bucket sort with O(n) space and time. – 0 swaps

Round 3:

Given a very long string and a transformation map, replace all the occurrences of any needle strings with their resultant transformations e.g.




input_string = “abcd;lt;qwer;gt;asd;”
map = {";lt;" : "<", ";gt;" : ">"}
transform(input_string, map) // should equal “abcd<qwer>asd;”

Proposed Ans: Naive solution by processing character by character and replacing the suffix if it matches with any of the needles.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.   In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.

My Personal Notes arrow_drop_up
Recommended Articles
Page :