Micro-grid distribution networks that use distributed energy sources are expected to lie at the heart of the emerging smart grid technology. While existing approaches have focused on control and communication aspects in micro-grids, this paper use coalitional game theory to study novel cooperative strategies between the micro-grids of a distribution network. For this purpose, a coalitional game is formulated between a number of micro-grids (e.g., solar panels, wind turbines, PHEVs, etc.) that are, each, servicing a group of consumers (or an area) and that are connected to a macro-grid substation. For forming coalitions, an algorithm is proposed to allow the micro-grids to autonomously cooperate and self-organize into a partition composed of disjoint micro-grid coalitions. Each formed coalition consists of micro-grids that have a surplus of power to transfer or sell and of micro-grids that need to buy or acquire additional power to meet their demand. Within every coalition, the micro-grids coordinate the power transfer among themselves as well as with the macro-grid station, in a way to optimize a utility function that captures the total losses over the distribution power lines. Also, the proposed algorithm allows the micro-grids, in a distributed manner, to self-adapt to environmental changes such as variations in the power needs of the micro-grids. Simulation results show that the proposed algorithm yields a reduction in terms of the average power losses (over the distribution line) per micro-grid, reaching up to 31% improvement relative to the non-cooperative case.