This question already has an answer here:
I have a shapefile with overlapping polygons, most overlaps are small. I want to remove all overlaps and get a new layer with similar but non overlapping polygons. I don't care much which of a pair of polygon gets the overlapping section. I would rather not go over them one by one. I've been using QGIS but am open to other tools.