首页 > 编程语言 > 详细

对数组排序进行"洗牌"(随机排序)

时间:2016-03-02 10:47:42      阅读:247      评论:0      收藏:0      [点我收藏+]

这段代码在这里使用Fisher Yates洗牌算法给一个指定的数组进行洗牌(随机排序)。

function shuffle(arr) {
    var i,        j,        temp;
    for (i = arr.length - 1; i > 0; i--) {        j = Math.floor(Math.random() * (i + 1));        temp = arr[i];        arr[i] = arr[j];        arr[j] = temp;    }
    return arr;     };

 

案例:

var a = [1, 2, 3, 4, 5, 6, 7, 8];
var b = shuffle(a); console.log(b);// [2, 7, 8, 6, 5, 3, 1, 4]

对数组排序进行"洗牌"(随机排序)

原文:http://www.cnblogs.com/frontendBY/p/5233920.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!