1. Memorize some base password 2. Memorize a way in which you mutate that password based on the name/type/other of the service logging in to.
Eg. Hunter2 becomes eHunterG8 Because my example algorithm cares about Google's first letter, length, and service type: email.
It allows every password to be different but you only memorize two things. It is meant to be a "good enough" solution that is much better than using the same password for everything, but naturally is worse than using significantly different passwords.
I've used this for a few years to great success. The one issue I have is I sometimes have to try multiple times when one account is many types of services.