Some people literally memorize answers. Other folks memorize algorithms. Yet other folks memorize general collections of axioms/proofs and key ideas. And perhaps at the very top of this hierarchy is memorizing just generic problem solving strategies/learning strategies.
And while naively we might believe that "understanding is everything". It really isn't. Consider if you are in the middle of a calculus exam and need to evaluate $7 \times 8$ by calculating $7+7+7+7...$ and then proceed to count on your fingers up to 56 because even $7+7$ wasn't memorized. You're almost certainly not going to make it past the first problem on your exam even though you really do understand exactly whats going on .
Similar things are true for software engineering. If you have to stackoverflow every single line of code that you are attempting to write all the way down to each individual print statement and array access it doesn't fucking matter HOW well you understand whats going on/how clear your mental models are. You are simply not going to be a productive/useful person on a team.
At some point in order to be effective in any field you need to eventually just KNOW the field, meaning have memorized shortcuts and paths so that you only spend time working on the "real problem".
To really drive the point home. This is the difference between being "intelligent" versus "experienced".