Javascript配列が完全にランダムに配列されています.
1701 ワード
Javascript配列が完全にランダムに配列されています.
参照リンク:https://www.h5jun.com/post/array-shuffle.html
配列乱順のエラー方法と詳細は、参照リンクを参照してください.https://www.h5jun.com/post/array-shuffle.html
以下の2つの方法は実用的だと思います.
(1)時間の複雑さはO(n 2)ぐらいで、splice()方法は一回を巡回します.
参照リンク:https://www.h5jun.com/post/array-shuffle.html
配列乱順のエラー方法と詳細は、参照リンクを参照してください.https://www.h5jun.com/post/array-shuffle.html
以下の2つの方法は実用的だと思います.
(1)時間の複雑さはO(n 2)ぐらいで、splice()方法は一回を巡回します.
function shuffle(a) {
var b = [];
while (a.length > 0) {
var index = parseInt(Math.random() * (a.length - 1));
b.push(a[index]);
a.splice(index, 1);
}
return b;
}
(2)時間複雑度はO(n)である.function shuffle(a) {
var len = a.length;
for (var i = 0; i < len - 1; i++) {
var index = parseInt(Math.random() * (len - i));
var temp = a[index];
a[index] = a[len - i - 1];
a[len - i - 1] = temp;
}
}