I don't blame him for hitting her, she hit him first (or at least it seemed like she did). And he obviously didn't hit her all that hard, since she got right back on the bus and continued fighting with him.
Where I think the guy was in the wrong, and the transit authority was absolutely justified in firing him, was in his unprofessional behavior before it got physical. She was being a giant bitch, no doubt about it, but he wasn't responding in a professional manner. He should have just ignored her, or told her to go sit down. Instead he responded with insults and threats and escalated the situation until it got violent.