Data Structures and Introduction to Algorithms: everyone needs this and it is maybe 50% of leet code problems
Assembly Language Programming and Machine Organization, Introduction to the Theory of Computation: this is the low level of how computers really work
Operating System Fundamentals: concurrency programming plus a lot more useful stuff
I think it is definitely worth it. Good luck!
What’s the other 50%? I’d have thought DS&A would cover everything.
I am not sure if there are any problems on leetcode that require any of these, but based on a sample of a few of their contests, if they exist they are a very small fraction (<<50%) of all problems.
The vast majority require:
- no DS&A knowledge whatsoever
- basic techniques (recursion, simple graph/tree algos, binary search, simple dynamic programming)
My recommendation is don't waste your time and money unless you have a specific goal in mind or want to go on to a master's program - which I also generally don't recommend unless, again, you have a very specific goal and no other way of accomplishing it.
If that's local, affordable, and easy, I wouldn't worry too much about looking for something "fancier" right off the bat, I think there's a lot to sink your teeth into there. There's a lot of stuff online too on all these topics of course, but if you're like me, that's not the same as taking a live course.