this is a presentation from google on how to approach a technical interview. I found it very insightful, although the solution is in c++, what is important here is the thinking process, how do you approach the problem, what are at least 2 ways in which you could solve the problem and which would be more efficient and WHY, edge cases and so on. https://www.youtube.com/watch?v=XKu_SEDAykw