Currently waiting for the next interview schedule, but here's a brief description of how the interview went / what I felt
- Interviewer was very nice and gentle. Waited me to talk through my thought process
- I talked about my project for about 15 minutes ( it was a complicated one ), he didn't really understand it because there was a lot of ML jargon, but it was fine.
- The question was very easy, but I got really nervous and went ahead of myself
You are given a graph with one inflection point, and you are supposed to find any number and o(logn) time.
So
i.e.) input = [{ 10, 4, 3 ,2, 5, 6, 8 } , k = 3 ], output = 2
we are finding k's index in o(logn) time using the fact that there is a local minima
This problems solves itself because logn time hints a binary search. He didn't really tell me to code and focus more on explaining my thoughts.
basically you find the minimum ( inflection point ) using a binary search, and then use two binary searches on two sides separated by the minimum. So its ( 3 * logn ) time.
- I asked him couple of questions about the company / hiring process
Tips :
- Practice EXPLAINING alot. I solved like 50 problems in the two prior weeks but I think instead of going for speed or clever answers I should have practiced explaining the problem and how I would approach it.
- Practice presentation. I got really nervous and talked kind of too fast; its ok to go slow given that you will finish solving the problem.
- Be nice to the interviewer ( Obvious !)