5

重複の可能性:
Ruby で n 個の一意の乱数のリストを生成するにはどうすればよいですか?

私はやってみたいです:

Random.rand(0..10).times do
  puts Random.rand(0..10)
end

ただし、乱数が既に表示されている場合は、再度表示することはできません。これを最も簡単に行うにはどうすればよいですか?

4

2 に答える 2

8

簡単なワンライナーとして:

rands = (0..10).to_a.shuffle[0, Random.rand(0..10)]
于 2012-11-01T15:39:45.227 に答える
4

Ruby 1.9 を使用している場合は、Array#sampleを使用した別のワンライナー

rands = (0..10).to_a.sample(­Random.ran­­d(0..10))
于 2012-11-01T15:43:50.070 に答える