2011 Microsoft Placement Paper - IBangalore

  • CategoryIT
  • Sub CategoryPlacement Papers
  • LocationBangalore
  • CompanyMicrosoft India
  • Posted date on our Website29 January 2011

User Ratings

4 out of 5 based on 8 Ratings.
Here are the details of 2011 Microsoft Placement Paper - I job in Microsoft India. This job or placement paper has been sourced from either company website or newspaper or other media and from students who appeared for this job. User is requested to verify the data before applying for the job.

Welcome to Microsoft Placement Paper 2011. Here you will find Microsoft Placement Paper Pattern and Download questions of Microsoft Placement Paper 2011 with Answers & Solutions.

2011 Microsoft Placement Paper:-

1. C++ ( what is virtual function ? what happens if an error occurs in constructor or destructor. Discussion on error handling, templates, unique features of C++. What is different in C++, ( compare with unix).

2. Given a list of numbers ( fixed list) Now given any other list, how can you efficiently find out if there is any element in the second list that is an element of the first list (fixed list).

3. Given 3 lines of assembly code : find it is doing. IT was to find absolute value.

4. If you are on a boat and you throw out a suitcase, Will the level of water increase.

5. Print an integer using only putchar. Try doing it without using extra storage.

6. Write C code for (a) deleting an element from a linked list (b) traversing a linked list

7. Compute the number of ones in an unsigned integer.


#define count_ones(x) \

(x=(0xaaaaaaaa&x)>>1+(0x55555555&x), \

x=(0xcccccccc&x)>>2+(0x33333333&x), \

x=(0xf0f0f0f0&x)>>4+(0x0f0f0f0f&x), \

x=(0xff00ff00&x)>>8+(0x00ff00ff&x), \


8. Compute the discrete log of an unsigned integer.


#define discrete_log(h) \

(h=(h>>1)|(h>>2), \

h|=(h>>2), \

h|=(h>>4), \

h|=(h>>8), \

h|=(h>>16), \

h=(0xaaaaaaaa&h)>>1+(0x55555555&h), \

h=(0xcccccccc&h)>>2+(0x33333333&h), \

h=(0xf0f0f0f0&h)>>4+(0x0f0f0f0f&h), \

h=(0xff00ff00&h)>>8+(0x00ff00ff&h), \


9. Let f(k) = y where k is the y-th number in the increasing sequence of non-negative integers with the same number of ones in its binary representation as y, e.g. f(0) = 1, f(1) = 1, f(2) = 2, f(3) = 1, f(4) = 3, f(5) = 2, f(6) = 3 and so on. Given k >= 0, compute f(k).

10. A character set has 1 and 2 byte characters. One byte characters have 0 as the first bit. You just keep accumulating the characters in a buffer. Suppose at some point the user types a backspace, how can you remove the character efficiently. (Note: You cant store the last character typed because the user can type in arbitrarily many backspaces)

11. Write a function to find the depth of a binary tree.

12. Given two strings S1 and S2. Delete from S2 all those characters which occur in S1 also and finally create a clean S2 with the relevant characters deleted.

13. Assuming that locks are the only reason due to which deadlocks can occur in a system. What would be a foolproof method of avoiding deadlocks in the system.

14. Given an array t[100] which contains numbers between 1..99. Return the duplicated value. Try both O(n) and O(n-square).

Given an array of characters. How would you reverse it. ? How would you reverse it without using indexing in the array.

16. An array of integers of size n. Generate a random permutation of the array, given a function rand_n() that returns an integer between 1 and n, both inclusive, with equal probability. What is the expected time of your algorithm?

ANS. "Expected time" should ring a bell. To compute a random permutation, use the standard algorithm of scanning array from n downto 1, swapping i-th element with a uniformly random element <= i-th. To compute a uniformly random integer between 1 and k (k < n), call rand_n() repeatedly until it returns a value in the desired range.

17. An array of pointers to (very long) strings. Find pointers to the (lexicographically) smallest and largest strings.

ANS. Scan array in pairs. Remember largest-so-far and smallest-so-far. Compare the larger of the two strings in the current pair with largest-so-far to update it. And the smaller of the current pair with the smallest-so-far to update it. For a total of <= 3n/2 strcmp() calls. That's also the lower bound.

18. Write an efficient C code for 'tr' program. 'tr' has two command line arguments. They both are strings of same length. tr reads an input file, replaces each character in the first string with the corresponding character in the second string. eg. 'tr abc xyz' replaces all 'a's by 'x's, 'b's by 'y's and so on. ANS.
a) have an array of length 26.
put 'x' in array element corr to 'a'
put 'y' in array element corr to 'b'
put 'z' in array element corr to 'c'
put 'd' in array element corr to 'd'
put 'e' in array element corr to 'e'
and so on.

the code
while (!eof)
c = getc();
putc(array[c - 'a']);

19. what is disk interleaving

20. why is disk interleaving adopted

About Microsoft India:-

Microsoft entered India in 1990 and has since worked closely with the Indian government, IT industry, academia and local developer community for ushering in some of the early successes in the realm of IT. Microsoft currently has offices in 13 cities - Ahmedabad, Bangalore, Chandigarh, Chennai, Coimbatore, Hyderabad, Indore, Jaipur, Kochi, Kolkata, Mumbai, New Delhi, and Pune. Increasingly, Microsoft is becoming a key IT partner to the Indian government and the industry. Since its advent, Microsoft has been supporting and fueling the growth of the local IT industry through its partner enablement programs. Since its entry into India, Microsoft has focused on three things, namely:

Why Microsoft  India- Why should i join Microsoft India?:-

Microsoft India understand that each employee has unique benefit needs and to meet that we offer flexible benefits. Flexible benefits puts the control in your hands to choose the mix of benefits that best suit you and your family. We make the benefits fit you instead of just offering a standard set of benefits. Here’s a bird’s-eye view.
At Microsoft, you’ll have an amazing range of opportunities. You might become an expert in a particular field or build proficiencies across many areas. You might be an individual contributor or become a manager. Because we have so many kinds of jobs in so many different places, you can stay in one building, city, or country, or you can cross borders—in person, or virtually.

Contact Details:

Address of Microsoft  India:-

Bangalore: SMSG Office:-

Microsoft Corporation (India) Pvt. Ltd.
Ground Floor & First Floor,
Block E, Signature Building,
Embassy Golf Links Business Park,
Off. Intermediate Ring Road, Domlur
Bangalore - 560 071
Tel: +91-80-66586868
Fax: +91-80-66586575

Microsoft Corporation (I) Pvt. Ltd.
6th Floor, Lancor Westminster
# 108, Dr. Radhakrishnan Salai Mylapore, Chennai - 600004
Tel. +91-44-28473900
Fax. +91-44-28473902

Microsoft Corporation (I) Pvt. Ltd.
DLF Cyber Greens
9th Floor, Tower A,
DLF Cyber City, Sector 25A
Gurgaon - 122002
Tel.: 91-124-4158000 / 2567000
Fax: 91-124-4158888

Microsoft Corporation (India) Pvt Ltd.,
4th Floor, Usha Jubilee Town 36,
Road No. 36, Jubilee Hills,
Hyderabad - 500 033
Tele No: 66965000


Microsoft Corporation (I) Pvt. Ltd.
L & T Chambers
4th Floor, 16 Camac Street,
Kolkata - 700017
Tel. +91-33-22807182
Fax. +91-33-22807191


Microsoft Corporation ( India ) Pvt. Ltd
Windsor, 4th Floor, Off  CST Road,
Kalina, Santacruz East
Mumbai - 400098
Tel: +91-22-67724000
Fax: +91-22-67724500

New Delhi:-

Microsoft Corporation (India) Pvt. Ltd.
Eros Corporate Towers,
5th Floor, Nehru Place,
New Delhi - 110019
Tel: +91-11-46502222
Fax: +91-11-46502020


Microsoft Corporation Pvt.Ltd.
Kumar Business Centre,
4th Floor, Survey No.362-3A,
Opp. Pune Central Mall,
Bund Garden Road.
Pune - 411001,
Tel: +91-20-66298900


(Disclaimer : This Job or placement paper has been sourced from various sources like print media, Job consultants, past candidates, our users and/ or Company website. The posted date above means the date on which the Job was posted on our site and not on the company site. Users are advised to check with the company for latest requirements before applying for the job. Our website will not be responsible for any loss to the company or the candidate. We have no relation with the company and are not responsible for the validity of this Job. We donot charge the company or candidate or any student anything. If the respective company has any issue with the data provided or they want this particular job or placement paper to be removed they can write into us at infinitecourses@gmail.com)

Comments / Reviews / Queries On

Click to See more Comments