in reply to How to generate distinct random numbers?
You reduce randomness slightly my insisting on no duplication. Here's the code:
Storing in hash keys gets us uniqueness.sub distinct_random_int { my($num, $start,$end) = @_; my ($range, %nums) = $end - $start; if ($num < $range) { $nums{$start + int rand $range} = undef while keys(%nums) < $num; return keys %nums; } else { return; } }
After Compline,
Zaxo
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How to generate different random numbers?
by Pragma (Scribe) on Sep 04, 2004 at 23:42 UTC | |
by thor (Priest) on Sep 05, 2004 at 09:10 UTC | |
by Pragma (Scribe) on Sep 07, 2004 at 04:52 UTC | |
by thor (Priest) on Sep 08, 2004 at 03:19 UTC | |
by Aristotle (Chancellor) on Sep 08, 2004 at 20:38 UTC | |
by Pragma (Scribe) on Sep 08, 2004 at 04:38 UTC | |
| |
|
Re^2: How to generate different random numbers?
by Rhys (Pilgrim) on Sep 05, 2004 at 00:52 UTC | |
by ranjan_jajodia (Monk) on Sep 05, 2004 at 06:26 UTC |