1. ja es gibt überschneidungen - mehr dazu findest auch bei Wikipedia z.B. - deshalb gibt es auch schon sicherere Hashes...
Und das mit der Tabelle - da bist du nicht der Einzige der auf diese Idee kommt

Nur heißen die Dinger nicht MD5 Tabellen oder so sondern Rainbowtables
Diese Rainbowtables jedoch mit allen erdenklichen Kombinationen zu machen wär absolut sinnlos weil du da nur in der deutschen Sprache mit allen "normalen" wörtern und Zahlen und Kombinationen daraus schon mehrere Terrabyte listen hättest - da ist dann bruteforcen sinnvoller...
Aber wie gesagt es gibt Rainbowtables mit ein paar hundert GB mit häufig gebrauchten PWs - so arbeiten auch online-cracker...