After this, you don’t need to go anywhere for roadmap and you should not, if you really want to learn and don’t want to waste your time.
Step 1:
- Learn any language, recommended is C++ and Java.
- solve 40-50 basic implementation and constructive problems.
Step 2:
- Learn theoretical concepts – means learn all types of data structure and what they do and their implementation details.
- As you study them in your academic syllabus as well.
- Solve 40-50 basic array and string based problems.
Step 3:
- Start solving any beginner friendly DSA sheet
- This will help you to build your foundation of all the important algorithms.
- Make notes of every concept you learn and revisit all the problem on weekly basis.
- Revising will help you to remember the concept quickly in newer problems
Step 4:
- Meanwhile give as many contests as possible on Codeforces, Codechef, Hackerrank, Leetcode etc.,
- Up-solve next 2-3 problems after each contest.
Step 5:
- In the end just solve a lot of random problems and give contests regularly