#!/usr/bin/perl # http://perlmonks.org/?node_id=1216102 use strict; use warnings; my @trips = 'a' .. 'z'; my @shuftrips = myshuffle( @trips ); print "@shuftrips\n"; sub myshuffle { map $_->[0], sort { $a->[1] <=> $b->[1] } map [ $_, rand ], @_; }