Perhaps this will be suitable (for your class exercise):
#!/usr/bin/env perl -l use strict; use warnings; my @initial = qw{q w e r t y q w e r t y}; print "Initial: @initial"; my $last = ''; my @unique = map { $last eq $_ ? () : ($last = $_) } sort @initial; print "Unique: @unique";
Output:
Initial: q w e r t y q w e r t y Unique: e q r t w y
Update (alternative solution): You could even skip the creation of the unsorted array (your @array_q3):
#!/usr/bin/env perl -l use strict; use warnings; my $last = ''; my @unique = map { $last eq $_ ? () : ($last = $_) } sort map { split +} <DATA>; print "Unique: @unique"; __DATA__ I am supposed to create a unique array I am not supposed to use hashes
Output:
Unique: I a am array create hashes not supposed to unique use
-- Ken
In reply to Re: Create unique array --the hard way!
by kcott
in thread Create unique array --the hard way!
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |