Efraimidis, Pavlos S., and Paul G. Spirakis. "Weighted
random sampling with a reservoir." Information Processing Letters 97,
no. 5 (2006): 181-185.
Wong, Chak-Kuen, and Malcolm C. Easton. "An efficient method for
weighted sampling without replacement." SIAM Journal on Computing 9,
no. 1 (1980): 111-113.