For memorizing anything, I tend to use this...
http://mnemosyne-proj.org/ It's an open source project that lets you build your own flashcards. Then as you go through your cards you click different numbers to indicate how well you knew the answer and that controls how quickly the card will cycle back.
You can organize the cards into groups and then activate only certain groups. So for example, you could group by tone count - 2 tones - 3 tones - etc. or by Key.
You can store all card as front to back - back to front or just front to back. In other words, you could have Amaj7 on the front and A, C#, E, Ab on the back. You could have it also show you these tones on the first, and you have to say Amaj7.
If you click through the cards every day, you'll be amazed that the information slowly begins to stick.
You can also export your cards to your phone and practice on the go.