[#40890] windowsでコンテキストメニューの「印刷」を実行するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
7 messages
2005/07/01
[#40891] 配列をシャッフル — Hideo Konami <konami@...>
小波です。
25 messages
2005/07/01
[#40892] Re: 配列をシャッフル
— Hiroyuki Adachi <hiroyuki-a@...>
2005/07/01
array = [1, 2, 3, 4, 5]
[#40899] Re: 配列をシャッフル
— ktokita <ktokita-p@...>
2005/07/01
時田です
[#40904] slice の仕様とマニュアルの記述 — Hideo Konami <konami@...>
小波です。
6 messages
2005/07/02
[#40939] 値の集合内の中から値の大きな数個のみを取得するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
5 messages
2005/07/27
[#40941] オブジェクト配列の単一化は? — 小西 弘将 <konishi@...>
小西です。いつもお世話になります。
6 messages
2005/07/27
[#40955] irb --noreadline — Masatoshi SEKI <m_seki@...>
咳といいます。
10 messages
2005/07/29
[#40966] Solaris9上のREXML — Hirotaka Mizutani <hirotaka@...>
初めて投稿させて頂きます。水谷と申します。
6 messages
2005/07/29
[ruby-list:40893] Re: 配列をシャッフル
From:
nobuyoshi nakada <nobuyoshi.nakada@...>
Date:
2005-07-01 07:52:34 UTC
List:
ruby-list #40893
なかだです。
At Fri, 1 Jul 2005 15:59:56 +0900,
Hideo Konami wrote in [ruby-list:40891]:
> 統計の無作為非復元抽出のシミュレーションのために,配列をシャッフル
> する方法を考えていて,次のような処理を思いつきました。これまで
> どんくさいやり方をしていたのに比べると(自分では)うまい方法だと
> 思ったのですが,もっとうまいやり方はないものでしょうか。お付き合い
> くださる方がおられましたら,よろしくお願いします。
結構定番の話題ですね。
> def shuffle(array)
> s = []
> while array.size > 0
> p = rand(array.size)
> s << array[p]
> array.delete_at(p)
> end
Array#delete_atは取り除いた要素を返すので、単純化できます。
s << array.delete_at(rand(array.size)) until.array.empty?
> return s
> end
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦