This is a complex problem, made more difficult by the stupid rules and limitations that web sites enforce.
I use pass-phrases rather than passwords.
So, for example, "I like 3 sausages." meets the usual password complexity rules, i.e. upper and lower case, number, special characters, and is...