蓄水池抽样算法(Reservoir Sampling)
**蓄水池抽样算法(Reservoir Sampling)**
蓄水池抽样算法用于从包含未知大小 *n* 的数据流中随机抽取 *k* 个样本,使得每个元素被选中的概率均为 *k/n*。该算法特别适用于内存有限、无法存储全部数据流的场景。
**问题描述**
假设数据流以序列形式依次到达(如日志文件、网络数据包),且 *n* 可能非常大或未知。需设计一个算法,在只遍历数据流一次的情况下,保证最终抽样的 *k* 个样本满足均匀随机性。
---
**算法步骤(k=1 的特殊情况)**
先
2025-11-10 12:44:57
0