andreyka26_se
606 subscribers
582 photos
66 videos
6 files
294 links
Hey, I'm software engineer at Microsoft, with 7 years of experience. Here we are talking about F(M)AANG big tech interviews: leetcode, system design and corpo life.

YouTube: @andreyka26_se
Instagram: andreyka26_se
TikTok: @andreyka26__
Download Telegram
andreyka26_se
If you already solved basic fibonacci number before - you would already know the naive recursive solution. This is first step to solve the Dynamic Programming problem.
If you start building the call stack tree - you will see that there are a lot of function call with the same argument.

The time is exponential: every function call we are calling recursive function 3 times. So it is 3^n time somplexity. The space complexity is the height of this tree = O(n).

I think the call stack tree should lead you to the optimization here
1
andreyka26_se
If you start building the call stack tree - you will see that there are a lot of function call with the same argument. The time is exponential: every function call we are calling recursive function 3 times. So it is 3^n time somplexity. The space complexity…
What you have to do is to remember the result once you calculated it. So next time, if you need to do recursive call - you would return the result from the map straight away.
For it we don't have to change the code that much, only add map there
1
But then, what can be done even better, since it is recursive solution, and interviewer for sure will ask you - how you will deal with stack overflow, and is there any iterative solution. In that case - you should start from the below: building the solution from the base case and move up until your N. Then just return the last element in memoization array
1
Media is too big
VIEW IN TELEGRAM
Having fun in office’s music room
👍3🔥1
andreyka26_se
oops... As always, client fckd up https://www.techzine.eu/news/collaboration/129181/the-end-is-nigh-for-skype-microsoft-to-pull-the-plug-in-may/
Once you will hear official commentary from MS, I will tell the story as well as I'm kind of part of this thing :)
1
People, today we are streaming 19:00 UTC (8pm Prague time).
Gonna do couple of LeetCode questions, and implement the rate limiter we have designed before
2😁1
while implementing, we will talk a bit about concurrency. Think we never spoke about this topic before. And yeah, since we are talking about concurrency - we cannot talk about JS, so Rate Limiter will be implemented using my main: .NET.
1
Charging
This media is not supported in your browser
VIEW IN TELEGRAM
🔥1
Now implementing system design solution for rate limiter in .NET
1
Whoever was in the stream once. I would appreciate any feedback especially negative. Maybe you would like to see some other way, cause Im trying to explain pretty deep so 99% of people would understand the concept we are doing. Another thing, maybe topic that we are doing: leetcode and system design is not that important/ exciting? Let me know yeah. But I need to hear from u.
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🤯3
Yeah, hate it. And in the end, if real primary needs your help during the incident - he can request assistance and you are going to be woken up as well and fix shit
🤯2😁1