Smash 64 has incredibly broken characters, but it's pretty balanced because they all have broken shit (Except Samus).
Melee has more characters and less brokeness, so inevitably there's a higher divide between the top tier and the low tier. However, I do think there was still a very wide roster of characters that was playable and they covered a range of playstyles. The bottom tier's main problem is that there's nothing worth using from them.
Brawl is a mess. Metaknight is so absurdly pumped up in damage, speed, recovery, range, and killing power that he beats everyone even without broken shit (and he does have broken shit like the infinite cape glitch and the terrible ledge mechanics). Going below that, the top tier is relatively balanced, but there are a ton of ridiculous matchups that are nigh-unwinnable. The character lowest on the tier list (Ganondorf) has at least six matchups considered nigh-unwinnable. We're not talking heavy disadvantage, we mean you might as well forfeit because he can't do shit to the opponent. If we're talking about heavy disadvantages, he has plenty of those too.
EDIT: I should state that this is all relative. There have been fighting games with worse balance than Brawl and fighting games with far, far better balance than Melee and 64.