My experience:
YOE: 3.5 years at Fortune 100 company
Got my B.S degree in Computer Science
Leetcode - Problems solved (600+ , 360 - Easy, 250 - Med, 40 - Hard)
Did all the Blind 75, Top 100 Liked Questions, Top Interview Questions. As well solved all the Top Google Questions - but that didn't help, since I learned they don't ask straight leetcode questions anymore.
Hopefully someone in the comments section below can help me find relevant leetcode questions so I can practice more.
Got a call from the recruiter and skipped the phone screen and online assessment to start the 1 day virtual onsite interview.
Rounds listed below are in random order
Round A)
Given an undirected graph
A - B - C - D
|-----------| <- this is to show there's a line from A to D or D to A. Can't draw it properly on this post.
Input -
graph = {
'A':['B','D'], # A is connected to B and D
'B':['C','A'], # B is connected to C and A
'C':['B','D'],
'D': ['A','C'] -< order doesn't matter could be ['C','A']
}
Return any of the valid following paths:
output: {A,B,C,D}
output: {B,C,D,A}
output: {C,D,A,B}
Follow up question
A - B - E
|``` |
D - C
Ignore the `, above assume they are empty strings or spaces.
graph = {
‘A’: [‘B’, ‘D’]
‘B’: [‘C’, ‘A’, ‘E’],
‘C’: [‘B’,’D’]
‘D’: [‘A’,’C’ ] < - list values can be flipped to [‘C’, ‘A’]
‘E’: [‘B’]
}
output: [] -> invalid path because B connects with C and E
Round B)
Similar to the basic calculator
Given the following strings s:
s = 'b + b' -> return 2b
s = 'a-b' -> return a-b
s = 'c-(b+c)' -> return -b
s = 'c-(b-(d+e))' -> return c-b+d+e
You may assume there won't be multipler before the parenthesis such as c - 11(b + c) [There won't be an 11]
Round C) Googlyness interview -> Tell me about a time....
Round D) Given N rooms labeled 0... N - 1, you have patients arriving at their appointment time. Each patient has a duration for each room they are in. At the end of the day, you want to return a room that contained the most patients. You are only allowed 1 patient per room and you must provide the lowest index available room.
Example - rooms = 3, appointment_times = [1,4,6,5,6], duration = [10, 3, 6, 20, 10]
Round E) (Very Easy) Find the isolated number, for example
nums = [1,2,4] -> [4] because it doesn't have 3 or 5
nums = [] -> []
nums = [1] -> [1]
nums= [1,2,4,4] -> [] since 4 has 2 numbers of it's own, thus not isolated
After 2-3 business days, recieved a call from my recruiter letting me know I'm weak in coding and reapply again in a year (this was my first onsite interview)
Good luck!