如何在使用以下程序中的哈希计算实际列表的顺序后维护实际列表的顺序?例如,<DATA>
是
a
b
e
a
c
d
a
c
d
b
etc.
Run Code Online (Sandbox Code Playgroud)
使用哈希,我计算每个元素的出现次数.
我想要的是:
a 3
b 2
e 1
c 2
d 2
Run Code Online (Sandbox Code Playgroud)
但是以下程序显示了我的情况.
my (%count, $line, @array_1, @array_2);
while ($line = <DATA>) {
$count{$line}++ if ( $line =~ /\S/ );
}
@array_1 = keys(%count);
@array_2 = values(%count);
for(my $i=0; $i<$#array_1; $i++)
{
print "$array_1[$i]\t $array_2[$i]";
}
Run Code Online (Sandbox Code Playgroud)