#!/usr/bin/perl use strict; my $list = sslist('aabcc'); for (@{$list}) { print "$_\n"; } sub sslist { my ($str) = @_; my (@list, %uniq); my @chars = split('', $str); for my $i (0..@chars-1) { my @temp = @chars; splice(@temp, $i, 1); my $key = join('', @temp); if (!$uniq{$key}++) { push (@list, $key); } } return \@list; }