配列の中身をシャッフルする
サンプルをダウンロード
■配列の中身をシャッフルする
配列の中身をシャッフルします。
■シャッフルのアルゴリズム
まず、シャッフルしたいデータを用意して、配列の中に格納します。
配列の 0 番目に格納されたデータを取り出します。ランダムに選択した番地から中身を取り出します。
そして、お互いのデータを入れ替えます。
この入れ替え作業を配列の 0 番目から最後まで順番に繰り返します。
すべての番地に対して、何らかの入れ替えを試みることになるのでシャッフルされます。
シャッフルの動作例です。
例) 配列をシャッフル
var a = [0,1,2,3,4,5,6,7,8,9];
var num = a.length; // 配列の数
var i;
for(i=0;i < num;i++){
// ランダムな番地を取得
var r = Math.floor(Math.random() * num);
// i とランダムな番地の中身を入れ替え
var t = a[r];
a[r] = a[i];
a[i] = t;
}