首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[教程]对数组洗牌

发布于 2024-09-12 11:10:00
0
225

这段代码运用了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
Lv.1种子选手

427

帖子

23

小组

329

积分

赞助商广告
站长交流