RE:0から51の中から重複のない5つをランダムに選ぶにはどうしますか

配列から重複なしでn件をランダムに抽出 - こげこげ堂はてな支舗

コメント(id:mas-higa)で指摘していただいたとおり


「0から51の中から重複のない値を5回取得」するのではなく
「0から51をシャッフル(ランダムソート)して5個取得」の方がすっきりします。
気付きませんでした。柔軟に考えないとなぁ。


自分の環境(ruby 1.8.6)では
sampleもshuffも使用できないので↓で実現できました。

(0..51).to_a.sort_by{rand}[0..5]

勉強になりました。ありがとうございます。