I dont think so...do you really learn it by heart? maybe your learning skills are not suitable to you... change your learning habit, perhaps it is the point..
you should put your homework that was wrong in the first time in your notebook, then read it for many times,just review them twice a week or before the next test..i guess it is an effective way for you to avoid the mistakes you have made last time..