Javascript配列が完全にランダムに配列されています.


Javascript配列が完全にランダムに配列されています.
参照リンク: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;
    }
}