首页 小组 问答 话题 好文 素材 用户 唠叨 我的社区

[教程]对数组洗牌

风轻yLv.1种子选手
2024-09-12 11:10:00
0
42

这段代码运用了Fisher-Yates Shuffling算法对数组进行洗牌。

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]
风轻y
风轻y

40 天前

签名 :   42       0
评论
站长交流