微软 New Grad level 61 过经

career fair 拿到的OCR

第一轮:

Discuss different(5) approaches to reverse the words in a string - https://leetcode.com/problems/reverse-words-in-a-string/description/
Resume and projects discussion
Show your work (apps and sites)
Got called on-site for a specific instead of general grad event.

第二轮:

Following is the question - it was originally in C# but you could use any language

class Process{
	String name;//unique 
	String id;
}
class Service{
	String name;
	String id;
	boolean isActive;
}
class Host{
	String processId;
	String ServiceId;
}
class Main{
	List<Process> processes;
	List<Service> Services;
	List<Host> hosts;
	// Define the following method's contract and implement the code
	public TBD getAllActiveServicesUnderAProcess(String processId){
		
	}
}

This was followed by many discussions about desgin choices, why a particular map/list was created and how can the performance be measured/trade-offs.

第三轮:

Given a BST and a number x - find the largest number smaller than x
Followup: x may not belong to the tree.
No additional space needed for both parts
Threads, Processes, synchronisation, how to implement semaphores, Implement Interlocking - other general discussions about thread practices.

第四轮 (一小时半):

Describe and discuss in depth, a past project
Given n and k - print all permutations of [1…n] of length k.
e.g. if n = 3 and k =2 - you print [1,1],[1,2],[1,3],[2,1],[2,2],[2,3],[3,1],[3,2],[3,3]
Give backtrack, iterative, memory efficient and time efficient solutions.
Substring matching and come up with a good approach to do this
Complexities and codes for each of the above

第五轮:
Mainly a behavioral round, team description, aspirations etc.

拿到了 SDE2/level 61 offer

感谢,请问楼主面的哪个组?