エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
JavaScript フィッシャー - イェーツのシャッフル - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
JavaScript フィッシャー - イェーツのシャッフル - Qiita
Fisher-Yates Shuffle ロナルド・フィッシャーさんおよびフランク・イェーツさんが考案したシャフルのア... Fisher-Yates Shuffle ロナルド・フィッシャーさんおよびフランク・イェーツさんが考案したシャフルのアルゴリズムです。 アルゴリズムのイメージ くじ引きの箱の中から1つずつくじを引いて並べてシャッフルするイメージです。 「取り出す範囲(くじ箱の中)」と「結果の範囲(くじ箱の外)」の2つに分けて考えます。 手順 取り出す範囲(箱の中)から取り出す値をランダムに1つ決定する。 末尾の値と交換する。末尾を結果の範囲(くじ箱の外)とする。 くじ箱の外が新しくできたので、取り出す範囲(くじ箱の中)を1つ前に狭める。 上記3つの処理を先頭の値がくじ箱の外になるまで繰り返す。 値が不規則に並んでかえってくる おわり //ソートされた配列 a = [1,2,3,4,5,6,7,8,9]; //取り出す範囲(箱の中)を末尾から狭める繰り返し for(i = a.length -1;i>0;i