タグ

アルゴリズムに関するnaqtnのブックマーク (1)

  • 配列のシャッフルと落とし穴 - ラシウラ

    風邪で寝てるあいだ、頭痛な頭でなぜか配列のシャッフルするアルゴリズムのことを思い出し、乱数と使い方の落とし穴について考えてました。 シャッフルは、たとえば輪読の順番を決めるときにつかいます。名簿を最初あいうえお順に並べて配列に入れておいてシャッフルすることで公平に順番を決めようという感じです。 シャッフル時に配列の要素を乱数をベースに入れ替えるのですが、乱数の使い方を誤ると最初の順番に依存して順番が偏ってしまうことが、落とし穴です。 結論から言うと配列シャッフルのアルゴリズムはJavaで書くと以下のようになります。 class Shuffle { private static final String names[] = { "taro", "jiro", "saburo", "shiro", "goro", }; public static void main(String[] args

    配列のシャッフルと落とし穴 - ラシウラ
  • 1