I'm currently working through the DSA fundamentals course on algomonster to get a better grasp of the basics before diving into advanced topics and LeetCode challenges. Although I consider myself a junior developer, I'm really struggling with even the fundamental concepts. I'm eager to know how others improved their DSA skills and what tips you have for tackling LeetCode problems. I've been putting in a lot of time but feel like I'm not making the progress I hoped for. Any advice would be greatly appreciated!
5 Answers
I took a course in Discrete Math during college, which really helped me build a strong foundation in logic, set theory, graph theory, and other crucial areas for DSA.
Honestly, it might be more beneficial to learn DSA as you work on real projects instead of focusing solely on theory. Try completing projects that encompass various features, like a TODO app with a backend and database management. This approach often leads to encountering DSA challenges naturally, plus it prepares you well for interviews.
Consistency is key! Practice regularly and don’t rush through problems. Taking breaks and coming back to them can help immensely; repetition makes things click.
A great approach is to break problems down into manageable parts. Once you understand the individual components of a problem, it will be much easier to solve and implement the complete algorithm.
Try to steer clear of AI for your learning unless you're confident in your own abilities. It's easy to let AI take over the problem-solving process, but you need to learn the material yourself. Focus on a specific topic for an hour, then spend 15 minutes summarizing it or coding it out yourself. Use spaced repetition like Anki to keep things fresh. This method can really boost your learning efficiency!
I’ll give this technique a shot, thanks!

Thanks for the insight! I'm primarily focused on landing a job soon, and I know DSA is crucial for that.