In practice these 2 words are often used interchangeably, but this is a bad habit to get into as they do have different meanings:
´May´ means that a person can do something, i.e they have the permission or the ability to do it, e.g. ´yes you may leave the class early´ or ´he may take part in the competition (because he has the ability or permission to do so)´ or because they are expected to be able to fulfill a certain criteria, act or expectation e.g. ´he may be here in the morning´ i.e. it is known that he can be here in the morning, but it is not certain if he will be.
Might indicates a level of probability, i.e. that there is something that could happen or not happen but there is no way of being certain about it, and it has nothing to do with permission, ability or expectation, e.g. ´he might leave the class early´ (but he doesn´t necessarily have the teacher´s permission to do so), ´he might take part in the competition´ (but nobody knows if he will or not, or if he is able to or not), and ´he might be here in the morning´= who knows? he might be here, he might not be, there is no way of knowing.