Some Useful DSA Resources
for the joy of learning:
- ITMO university in russia has the strongest competitive programming team and ecosystem globally. If you are genuinely curiously to learn about Alogo and datastructure and okay for something long but in detailed check out this playlist by Pavel Mavrin. Watch here
- if you want a indian University style teaching then checkout Abdul Bari Sir’s lecture videos. he teaches data structures the way they are taught in college. Having a strong grasp of these fundamentals is very important. Watch here
Interview focused:
Complete novice, lack of time:
If you have a lot of time and want to crack FAANG or similar companies, here is my personalized curated list of problems by topic:
Video Resources
- Striver’s A2Z DSA Course
Watch here
His Graph and Dynamic Programming series are especially top-notch.
Tips and Tricks
- Practice, practice, practice.
- Not mandatory, but if possible, use an easier language with a lot of built-in support, like Python. It can save you valuable time during a coding interview.
- Understanding time and space complexity is fundamental and extremely important. Always mention the time and space complexity of your approach in the interview.
- Focus on dry runs. After writing your code, walk through it step by step with test cases. Interviewers care more about your thought process than just a working solution.
- Optimize iteratively. Even if you know the most optimal solution, start with a brute-force solution and then discuss how you plan to optimize it.
- Write clean and readable code. Use proper variable names, avoid clutter, write modular code.
- Consistency is better than quantity. Solving 3–5 quality problems every day with full understanding beats rushing through 50 problems a week.
- Don’t ignore edge cases. Think about empty inputs, duplicates, extreme sizes.
- Think through the complete solution before you code. Spend time planning. A few extra minutes thinking before typing saves time debugging later.
