Here is one of the good read. I tried almost some. screwed my mind. Have a try : winspark.net/2012/06/24/some-microsoft-interview-puzzles-part-1/
1.Write some functions in c/c++ and then re-write the same function that can improve performance(cpu/memory etc) and explain why? 2. Given a string, find the start position of the largest block of repeated charactes. After the solution, I was asked to write down as many test cases I could to test the function as if it was created by someone else. Best Interview Answers: “Reason to Leave the Previous Company†http://www.indianist.com/best-interview-answers-reason-to-leave-the-previous-company/