簡單隨機抽樣的樸素演演算法有哪些缺點？
已經開發了幾種簡單隨機抽樣的高效演演算法。一種樸素的演演算法是逐個抽取演演算法，每一步我們以相等的機率從集合中刪除該步驟的專案，並將該專案放入樣本中。我們繼續，直到我們有所需大小的樣本 k。這種方法的缺點是它需要在集合中進行隨機訪問。

Fan等人在1962年開發的選擇-拒絕演演算法只需要對資料進行一次遍歷；然而，它是一個順序演演算法，需要知道專案總數 n，這在流式場景中是不可用的。

Sunter在1977年證明瞭一種非常簡單的隨機排序演演算法。該演演算法只是為每個專案分配從均勻分佈（0,1）中抽取的隨機數作為鍵，然後使用鍵對所有專案進行排序並選擇最小的 k 個專案。

J. Vitter在1985年提出了蓄水池抽樣演演算法，這是廣泛使用的演演算法。該演演算法不需要事先知道人口 n 的大小，並使用恆定的空間。

隨機抽樣也可以透過從樣本之間的間隔分佈中進行抽樣並跳過間隔來加速。
這種方法的缺點是它需要在集合中進行隨機訪問。