g = Graph[{0 -> 1, 1 -> 2, 2 -> 0, 3 -> 1, 3 -> 2, 3 -> 4, 4 -> 3, 4 -> 5, 5 -> 2, 5 -> 6, 6 -> 5, 7 -> 4, 7 -> 6, 7 -> 7}]; cc = ConnectedComponents[g] Catenate[ConstantArray[Min[#], Length[#]] & /@ SortBy[cc, First]]