蓄水池抽样-reservoir

蓄水池抽样是在O(n)复杂度下随机从海量动态的数据流中取m个数据的一种算法,常在机器学习中使用。

以下是对蓄水池抽样算法的简单图示说明:
蓄水池抽样算法.png

场景模拟代码实现如下:

const reservoir = (data_stream, m) => {
    let n = data_stream.length;
    let reservoir = new Array(m);

    for(let i=0;i=0 && j

你可能感兴趣的:(蓄水池抽样-reservoir)