In this paper we provide an algorithm that generates a graph with given degree sequence uniformly at random. Provided that (Formula presented.), where (Formula presented.) is the maximal degree and m is the number of edges, the algorithm runs in expected time O(m). Our algorithm significantly improves the previously most efficient uniform sampler, which runs in expected time (Formula presented.) for the same family of degree sequences. Our method uses a novel ingredient which progressively relaxes restrictions on an object being generated uniformly at random, and we use this to give fast algorithms for uniform sampling of graphs with other degree sequences as well. Using the same method, we also obtain algorithms with expected run time which is (i) linear for power-law degree sequences in cases where the previous best was O(n4.081), and (ii) O(nd + d4) for d-regular graphs when (Formula presented.), where the previous best was O(nd3).
- random graphs
- randomized generation algorithms
- rejection sampling