An Efficient Method To Generate A Discrete Uniform Distribution Using A Biased Random Source
This article presents an efficient algorithm to generate a discrete uniform distribution on a set of $p$ elements using a biased random source for $p$ prime. The algorithm generalizes Von Neumann's method and improves computational efficiency of Dijkstra's method. In addition, the algorithm is extended to generate discrete uniform distribution on any finite set based on the prime factorization of integers. The time complexity of the proposed algorithm is overall sublinear $\operatorname{O}(n/\log n)$