(一)Fisher–Yates shuffle 洗牌算法
是最完美乱序的算法/方法之一.
Array.prototype.shuffle = function() {
var array = this;
var m = array.length,
t, i;
while (m) {
i = Math.floor(Math.random() * m--);
t = array[m];
array[m] = array[i];
array[i] = t;
}
return array;
}
(二) sort
这不是真正意义上的完全乱序
function shuffle(arr) {
return arr.sort(()=> Math.random() > 0.5);
}
网友评论