改良されたアルゴリズムとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 改良されたアルゴリズムの意味・解説 

改良されたアルゴリズム

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/27 02:05 UTC 版)

フィッシャー–イェーツのシャッフル」の記事における「改良されたアルゴリズム」の解説

フィッシャー–イェーツのシャッフル改良されバージョンコンピュータ使用想定している。それはリチャード・ダステンフェルドによって1964年紹介されドナルド・クヌースもまたThe Art of Computer Programmingにおいて"Algorithm P"として世に広めた。ダステンフェルド、クヌースともに、著書初版ではフィッシャーイェーツ研究については、おそらく気づいていなかったために紹介していない。The Art of Computer Programmingの続版ではフィッシャーイェーツ業績について言及している。 ダステンフェルドのアルゴリズムフィッシャーイェーツのそれには、小さいが決定的な差異存在するフィッシャーイェーツの手法を単純にコンピュータ実装する場合上記の手順3において、残っている数を数え上げるという不要な時間要する対してダステンフェルドの手法では「消す」数字を、残っている数字の中で最後数字入れ替え数列最後に移動させる。これにより、計算量フィッシャーイェーツ版の単純な実装場合のO(n2)と比べ、O(n)に減少する。この変更により、アルゴリズム下記のようになる。ここでは0始まり配列使用する要素数が n の配列 a をシャッフルする(添字は0からn-1): i を n - 1 から 1 まで減少させながら、以下を実行する j に 0 以上 i 以下のランダムな整数代入する a[j] と a[i]を交換する パラメータ p, q に対して p 以上 q 未満ランダムな整数返す乱数生成器使用する場合配列上記の例と反対方向走査する以下のアルゴリズム用いることができる。 要素数がnの配列aをシャッフルする(添字は0からn-1): i を 0 から n - 2 まで増加させながら、以下を実行する j に i 以上 n 未満ランダムな整数代入する a[j] と a[i]を交換する

※この「改良されたアルゴリズム」の解説は、「フィッシャー–イェーツのシャッフル」の解説の一部です。
「改良されたアルゴリズム」を含む「フィッシャー–イェーツのシャッフル」の記事については、「フィッシャー–イェーツのシャッフル」の概要を参照ください。

ウィキペディア小見出し辞書の「改良されたアルゴリズム」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「改良されたアルゴリズム」の関連用語

改良されたアルゴリズムのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



改良されたアルゴリズムのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのフィッシャー–イェーツのシャッフル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS