1)Pickup a programming language , preferably C++ .
2)Focus heavily on loops , conditions and basic logics as they are going to build your foundation .
3)Preferably , solve 100+ C++ problems from sitesbay (https://www.sitesbay.com/cpp-program/index
4) Watch videos of Sir Saurabh Shukla or EasyTuts4u for C++ if you have doubt in some concept .
5) Now , to improve the real algorithmic skill , you must solve 40-50 problems from this section of Hackerrank : - shorturl.at/bAEWZ
6)Remember , every problem has a solution on youtube , or you can see the editorial of problem on Hackerrank and many people discussing the same problem in the discuss section of a problem for Hackerrank . Apply same protocols for LeetCode , Codeforces and Codechef .
7)Now, is the time to focus on sorting , searching , a bit of greedy algorithms , string problems and hashing concepts . Large portion of problems you face in contest or interviews will overlap with these topics in one way or the other . So make these super strong , thats the secret!
8)For strings , try these problems :
9)For sorting , searching and hashing :
Important : https://leetcode.com/discuss/interview-question/313216/Binary-search-Interview-Questions
10)For sliding window and 2 pointers technique : https://leetcode.com/list/x17aw7vm/
You can find videos on different problems for all these topics on these good youtube channels :
(Please learn to search like this : xyz channel , xyz topic and you will get what you were looking for)
Now , you have passed the beginner level , now to reach intermediate level in DSA , I will be posting a new answer .