To clean overlapping circles, I will use v.clean from
Processing toolbox in QGIS -> GRASS GIS -> Vector -> v.clean, then I will use Delete duplicate geometries from
Processing toolbox in QGIS -> QGIS geoalgorithms -> Vector general tools -> Delete duplicate geometries.
Here is an example:
I have an overlapping circles that when you use an identify tool and select the small circle in the center, you can see that all of them are selected because they are overlapping each other.
Processing toolbox in QGIS -> GRASS GIS -> Vector -> v.clean and select the Clean tool
will break/cut the circles where they overlaps, so you will have a duplicate polygons:
The original shapefile has 6 polygons, but after the break I got 21 polygons with some of them are identical in their areas.
To remove these duplicate polygons, I use
Delete duplicate geometries, and the final output is as expected:
I have 6 polygons with no overlap as you can see from the identify tool.