Suppose I had a gigantic sum of bitcoins and wanted to store them in my brain's memory instead of any physical form. How much data would I need to be able to remember? I understand I'd have to transfer it all to one address - would I need to remember both its private and public key, or can the public one be calculated based on the private key?
This is called a brain wallet. You need to remember only the generator for the private key, which can be anything you choose. You just have to remember something (anything) that is complicated enough that other people could not guess it, even if given trillions of guesses.
This is actually surprisingly complicated. If you write the passphrase down, it's not really a brain wallet anymore. If you don't, and you forget any bit of it and cannot precisely remember it, your funds are lost. If you make it simple enough to ensure you can remember it, the risk that someone else will find it is high. Lastly, the tools you use to convert the passphrase to a Bitcoin address can be flawed or sabotaged.