3 1/2 year old pulls hair throws toys and scratches others at day care

My 3 and half year old son has been pulling hair (of other children at school). It started a few months ago, until then he would pull my hair only. A few months ago, after repeatedly telling him don't pull hair, he stopped pulling my hair at home but started doing so at school instead and now he does it at home and at school. He is a bright kid, but just does not understand pulling hair, hitting, scratching hurt. He is also in a class where everone (who is over 4) communicates much better than he does, and his behavior seems to have worsened gradually since he was moved to this new class (gradually over a year or so and last week he started hitting and scratching!). No amount of talking, time out, and spanking helps(did it out of frustration and realized its wrong!). While changing environments (school) is an option, what if the behavior does not stop even with that done. Is it the environment, lack of ability to communicate, or in general a stage that some 3 year olds go through? How do I hadle this so that the other children are safe and the root cause of this agression is taken care of so that my son is happy as well?

day care with large

day care with large child:adult ratios and lack of consistency ofcare giver is less likely to give him opportunities to develop those skills in a supported way than being with a parent who can help him develop more constructive ways to engage with other people. Not parent on hand to punish, but parent on hand to diffuse, help, redirect.