Is this a viable method or is this an indication that I need to review the basics?
Well… you might have rushed a little bit and this is why it’s a little harder to comprehend.
What I’d advice is for you to take it slower, go again over the basics and make sure you understand how everything works.
What I did when I started is while I was working on these problem, I tried to tweak the code to see how it reacts. This way I learned a lot of stuffs!
I would suggest to spend at least a few days before looking at the hints, or not at all - it is not like you have to complete a challenge to go to the next one. But return to them a second time, a third, fourth…
Also, I would advice to try to explain the algorithm to someone else, to the smallest steps you need to do (no coding language, just logic/pseudo-code), after that try to explain the methods and language features you know can solve those steps, and search for those you don’t know (reviewing the previous challenges or in the documentation or stack overflow, or just google it)
And when you are stuck, do it again, explain your code step by step to someone else (your trusty duck for example), and if your duck is not able to help you, you can explain it again to someone else, maybe on the forum here.
There’s nothing necessarily wrong with working backwards from the solution to attempt to discover how it works, though if you’re doing this every time, you’re robbing yourself of a vital part of the learning process. What I suggest is that you don’t copy-paste a solution, but rather type it out yourself, and try to understand each piece as you go. Then try to convert the solution code to your own particular coding style (I like going functional), which will help solidify your understanding.
I think its fine you look at the hints after a while, after looking into the problem, without directly looking at the answer. So like looking up what functions are available on an array is fine to solve an issue that uses arrays, and doing this only expands what you already know. So looking at the solution eventually is fine, but the key is that you go back and redo the challenge later to see if you actually know how to solve it without help.
Just like using flash cards to remember something in school, looking at the solution is fine, as long as you go back and verify you remember it. You can move forward 1 or 2 challenges, and jump back and re-attempt the problem from scratch.
Do this a few times, and odds are after reviewing the contents enough you should remember something.
Now if you only remember like 50% then I advise you to struggle again, and try to work thru the problem with the knowledge.
Goodluck and keep challenging yourself, its the best way to learn