This pertains especially to STEM courses: Look for patterns and document them in your
Knowledge Base. If you look at the material for a test in calculus, there are probably only 5-7 different types of problems, and each type might have a variation or two. Think of learning the material as an algorithm (step-by-step procedure that leads to the correct solution). Structure your knowledge (in your head and on your Knowledge Base) as an algorithm:
if problem_type_A:
if variation_1:
do ...
elif variation_2:
do ...
elif problem_typeB:
...
This is a very effective technique.