my @x = uniq 1, 1, 2, 2, 3, 5, 3, 4; # 1 2 3 5 4 my $x = uniq 1, 1, 2, 2, 3, 5, 3, 4; # 5Una alternativa para obtener un array
@out
con los elementos no
repetidos de un array @in
es utilizar grep
y un hash
auxiliar %saw
para los elementos ya vistos:
my %saw = (); @out = grep(!$saw{$_}++, @in);otra forma de hacerlo (Uno de los lemas de Perl es TIMTOWTDI: There is more than one way to do it!)
undef %saw; @saw{@in} = (); # Creamos un hash con claves en @in @out = keys %saw;
Casiano Rodríguez León