in reply to Re^4: Array problem
in thread Array problem
As one can see easily, the running time inside the main loop is independent of the size of the array, hence, O(1), making the entire program run in linear time.my @animals = qw [dog cat bird mouse rat snake horse cow pig lizard lamb zebra lion elephant monkey]; my @scratch = @animals; foreach my $animal (@animals) { for (my $j = @scratch - 1; $j >= @scratch - 3; $j --) { my $r = rand ($j + 1); @scratch[$j, $r] = @scratch[$r, $j]; if ($scratch[$j] eq $animal) { my $r = rand ($j); @scratch[$j, $r] = @scratch[$r, $j]; } } say "$animal @scratch[-3..-1]"; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^6: Array problem
by BrowserUk (Patriarch) on Sep 29, 2008 at 00:06 UTC | |
by ikegami (Patriarch) on Sep 29, 2008 at 01:33 UTC | |
by BrowserUk (Patriarch) on Sep 29, 2008 at 04:25 UTC | |
by ikegami (Patriarch) on Sep 29, 2008 at 04:57 UTC | |
by JavaFan (Canon) on Sep 29, 2008 at 09:42 UTC | |
by BrowserUk (Patriarch) on Sep 29, 2008 at 15:22 UTC | |
by ikegami (Patriarch) on Sep 29, 2008 at 00:37 UTC | |
by BrowserUk (Patriarch) on Sep 29, 2008 at 01:09 UTC |