We have hitting and biting and have had it since ds was about 18 months old (he's 2 now). Mostly it is of us but sometimes of other children. I did get very upset about it at first, particularly when other parents were nasty about it (although I understand it's distressing to have your child hit). We actually went to a psychologist about it at the children's centre as it was upsetting me so much and making being with him so stressful.
We tried lots of things, including being firm (no effect whatsoever), warnings (worked for a while and then stopped) and taking him out for short periods (didn't work). He said 'no pushing' but carried on doing it. The successful things we did are outlined below. This is very much a work in progress and we are still using all these strategies.
We had a couple of approaches. One was seeing it as a sign of stress and being over-tired, and so if possible changing the environment e.g. taking him away for a quiet nappy change, a bit of 'mummy time' upstairs or maybe leaving the playgroup. That often works.
Another is to see it as a 'skills deficit' - he wants to be social but doesn't yet know how. I read something which says that children this age often don't know what we would prefer them to be doing and when we just say 'no' then they don't learn alternatives. So we say things like 'No biting- if you want to show mummy you love her you can give her a cuddle'. This has worked really well. When we go into a playgroup I will start off by saying something like 'If you want to say hello to your friends, you can wave and say hello, we don't push our friends'. He almost always does then do what I have suggested although he does forget fairly frequently (the other thing which has helped me is to remember that children this age have very little inhibitory control, for them, to think something is often literally to do it!).
The last approach which we are using I call the 'cheerleading approach'. This involves a constant commentary on his good behaviour and how well he's doing when he's not biting/pushing (obviously only in high-risk situations, not all the time). So at the playgroup I will follow him saying 'wow, he's behaving so nicely with the other children, he's given that toy to X so well, what a friendly boy, now look, here comes Y, you could give her a wave and say hello, oh yes, that's lovely, well done, oh look, Y has a toy, she's playing with it now, well done, you let her play with it, that's really good sharing...' this is hard work but he absolutely loves it, I can see the smile on his face. I don't wait for him to behave nicely, I do it all the time he is not behaving badly as I see that all as good behaviour! I do this when I think he might hit me as well 'oh look you could give mummy a lovely cuddle, well done, that's so nice, what a nice friendly boy...'etc etc
HTH - we have shed many tears over this one.