Microsoft Interview questions
Microsoft Interview questions
Technical Interview:
- What is the basic difference between 32-bit and 64-bit operating system?
- What is deadlock? What are the conditions of deadlock? Can you write a code to show deadlock. What is the Bankers Algorithm?
- What exactly do you mean by UDP?
- State three differences between HTML and XML.
- Explain polymorphism.
- Given a pile of 9 objects. 2 players take turns to pick 1, 2 or 3 objects. The last one to pick is the looser. What is the winning strategy? What is the winning strategy for 9 coins?
- Define stored procedure. What are its advantages and disadvantages?
- What are the differences between interfaces and abstract classes?
- How do you sort a linked list using the most efficient algorithm?
- Design a Memory Management System.
- Differentiate between data set and data reader.
- Problems to find median of two shorted arrays.
- Different types of system calls.
- What are different types of Interrupts? What happens when an interrupt is called?
- Find if there is a loop in a linked list.
- Write an algorithm to find the depth of a binary tree.
- Write an algorithm to separate all ones & zeroes in an array.
- How to detect the starting point of loop in a linked list which has a loop?
- Given a singly linked list, in which the last node points to the middle node, delete the middle node and remove the loop.
- Write a recursive function to form a list containing intersection of two given linked list without creating new nodes.
- Given an array of size n, find the majority element. Majority element is one which gets repeated for more than n/2 times.
- What are the features of a good code?
- Find syntactical and logical errors in a C-program (printed on a paper).
- Design a poke feature in Facebook.
- Given two lists sorted in increasing order, create and return a new list representing the intersection of the two lists. The new list should be made with its own memory — the original lists should not be changed.
- Given an expression string exp, write a program to examine whether the pairs and the orders of “{“,”}”,”(“,”)”,”[“,”]” are correct in exp. For example, the program should print true for exp = “[()]{}{[()()]()}” and false for exp = “[(])”
- Declare a character stack S.
Now traverse the expression string expression:If the current character is a starting bracket (‘(‘ or ‘{‘ or ‘[‘) then push it to stack.
If the current character is a closing bracket (‘)’ or ‘}’ or ‘]’) then pop from stack and if the popped character is the matching starting bracket then fine else parenthesis are not balanced. - Tell the pseudo code to reverse a linked list.
- You have a matrix a[m] [n]. Transpose it into a matrix b[n] [m] in minimum iterations. I could think of m*n/4 at most.
- Difference between OOPS and C.
- Write a function to check whether the string is valid or not.
- Given a string and two positions in that string, shuffle the string, that is, move the given substring to the front.
Example:
Input: abcdefgh, 4,6
Output: defabcgh
This has to be done in place with O(n) time complexity. - How to implement dictionary data structure in C++? What kind of hash functions shall we use? How to manage collisions?
- How would you implement vector data structure in C++ on your own? What would be the accessing time complexity? How can you make it O(1)? How to resize the structure?
- How would I decide which feature should be implemented next in an operating system?
- Given the head of two linked lists, find the merging point of both the linked lists. In case the linked lists do not merge then return NULL.
- Given a 2d array of 0s and 1s where 0s represent water and 1s represent land. A connected patch of 0s count as one single water body and if a water body is covered by 1s all around it then it forms one pool. Write a function to return the total number of pools in the 2D matrix. In case a water body is present on the boundary of the array immediately return -1.
- Given an address of a node in a singly linked list, delete that node.
- Find the nth node from the end of a singly linked list.
- Check whether a binary tree is a BST.
HR Interview:
- Introduce Yourself.
- What was your job in your final year project?
- What do you think is your biggest achievement? Why?
- Whom do you idolize in the business industry?
- What do you think makes you different to work in Microsoft?
- Tell any 4 of your favourite products from Microsoft.
- Introduce yourself and tell us something apart from the Resume.
- Why do you want to join Microsoft?
- What are your favourite subjects in your graduation and why?
- What do you want to be in the future?
- Tell any 1 social problem that bothers you the most. Can you suggest any solution to this problem as a technical guy?
- Some questions based on your resume.
- What is important to you: the money or the work?
- Tell us about your project.
- What are the disadvantages that Gmail has? Can you suggest some means to overcome it?
- How would you rate your academic performance in your graduation? Justify?
- Why do you want to work and not pursue a higher education?
- What would you like to improve in yourself 3 years from now (other than knowledge)?
- What are your strengths and weaknesses?
- Why Microsoft? What competitor of the company would you like to work for? Would you prefer Microsoft?
- How can you assure that you will join by that time?
- What are your strengths and weaknesses?
- Why did you chose a career in Computer Science Engineering? Was it your own decision or parent's choice?
- Describe any innovative aspects of your final year project.
- Who is the CEO of Microsoft?
- Do you have any questions for us?
- Tell us about your strengths. Why should we prefer you to other candidates?
- What have you done to improve your academic position in the last 2 years?
- Tell us about any challenging tasks that you faced in your life.
Comments
Post a Comment