For those who started learning DSA using the Striver Sheet, what was your approach?
Did you watch Striver's lecture first and then solve the problem, or did you try solving the problem on your own and only watch the lecture if you got stuck?
I'm currently on the Binary Search topic. So far, my approach has been to watch the lecture first and then solve the problems. However, I don't feel like I'm making meaningful progress. Since I already know the solution after watching the lecture, I'm not really developing my problem-solving skills. Whenever I encounter a new or slightly different problem, I get stuck.
Another concern is the time it takes. Following this approach, it feels like it will take a very long time to complete the entire sheet.
I also haven't started participating in contests because I haven't covered some important topics yet, such as Strings, Linked Lists, Stacks, Queues, Sliding Window, etc. At my current pace, it'll probably take another two months before I finish these basics.
For those who follow the approach of attempting problems first, how did you learn the topic and the optimal solutions when you hadn't studied them before?
Striver usually explains three approaches (brute force, better, and optimal). I can often think of the brute-force approach and sometimes the better approach, and occasionally I even understand the idea behind the optimal solution. But I usually can't code the optimal approach on my own. If you only attempt one or two approaches before watching the solution, how do you learn the remaining approaches and build that way of thinking?
I know this might sound like a basic or even silly question, but I'm genuinely confused. I don't want to waste time following an inefficient approach or fall behind. My goal is to learn DSA effectively and start participating in contests with enough preparation to solve at least 2–3 problems consistently.
I'd really appreciate any advice from people who've been through this journey. Thanks!