Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re: swap columns in a 2-dim array

by TedPride (Priest)
on Jun 17, 2005 at 16:21 UTC ( #467792=note: print w/ replies, xml ) Need Help??

in reply to swap columns in a 2-dim array

If you know there's going to be a large number of swaps, why not make a set of array subscripts and swap those around, then output in whatever the final order is?
use strict; use warnings; my (@nums, @index, $x, $y); # CREATE MATRIX push @nums, [1..12] for 1..12; # CREATE INDEX @index = (0..11); # PERFORM RANDOM SWAPS for (1..20) { $x = int rand 12; $y = int rand 12; swap(\@index, $x, $y); } # OUTPUT IN FINAL ORDER for $x (0..$#nums) { print $nums[$y][$_].' ' for (@index); print "\n"; } sub swap { my ($p, $x, $y) = @_; my $t = $p->[$y]; $p->[$y] = $p->[$x]; $p->[$x] = $t; }
Comment on Re: swap columns in a 2-dim array
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://467792]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2016-05-26 20:49 GMT
Find Nodes?
    Voting Booth?