JavaScript 正态分布的一种实现方法
来源:牛鼻子老邵     阅读:1774
源码超市
发布于 2019-06-11 05:33
查看主页
    function getWeight() {    //正态分布函数      function gaussianRandom(start, end) {        return Math.floor(start + gaussianRand() * (end - start + 1));       //更偏向于中间的值乘以前后的差,加上前面的值,得到更偏向于中间的最终值      }    function gaussianRand() {      var rand = 0;      for (var i = 0; i < 6; i += 1) {        rand += Math.random();      }      return rand / 6;    } // 六个随机数取平均值得一个更偏向于中间的值。    ////////////////////////////    let leftWeights = [];    let rightWeights = [];    //形成反向的正态分布    for (let i = 0; i < 10; i++) {      leftWeights.push(gaussianRandom(0, 2000));      rightWeights.push(gaussianRandom(0, 2000));    }    // 得到多个近似于正态分布的值,而后排序。    leftWeights = leftWeights.sort((a, b) => {      return b - a;    });    rightWeights = rightWeights.sort((a, b) => {      return a - b;    });    this.weights = leftWeights.concat(rightWeights);  }
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境 服务器应用
相关推荐
首页
搜索
订单
购物车
我的