For anyone who is self learning code, and trying to get better at white boarding questions I have been keeping some notes on how I continue to learn and improve.
My first mistake was jumping right into Leetcode. The thing is, you need to be familiar with the fundamentals: Data Structures and Algorithms. I grinded Leetcode for a little bit until I eventually started banging my head against a wall. It was not fun. Don’t make the same mistake I made.
Take some time to learn the basics like arrays, linked lists, doubly linked lists, graphs, hashes, heaps, trees etc.. There are a bunch out there but as I am learning, I’m finding that you don’t need all of the niche ones that are more abstract. You just need to know the basics and its similar versions.
I have been doing some research and I came across this article that goes over a lot of these basics. It’s a really great guide because he goes over the most common ones and not the abstract/niche ones. This is great for someone who wants to learn the fundamentals without having to go to a college to learn them. I will continue to update this blog if and when I find some more methods that go over Leetcode and Data Structures/Algorithms.
In conclusion, make sure to not only understand most of these DS/A’s but try actually coding them and messing around with them. It definitely helps prepare you for websites like leetcode and hackerrank.