From: Hideo Konami Date: 2005-07-01T15:59:56+09:00 Subject: [ruby-list:40891] 配列をシャッフル 小波です。 統計の無作為非復元抽出のシミュレーションのために,配列をシャッフル する方法を考えていて,次のような処理を思いつきました。これまで どんくさいやり方をしていたのに比べると(自分では)うまい方法だと 思ったのですが,もっとうまいやり方はないものでしょうか。お付き合い くださる方がおられましたら,よろしくお願いします。 #!/usr/local/bin/ruby def shuffle(array) s = [] while array.size > 0 p = rand(array.size) s << array[p] array.delete_at(p) end return s end a = ["A","Q","K","J"] p shuffle(a)