相关疑难解决方法(0)

如何维护我添加到Perl哈希的键的顺序?

如何在使用以下程序中的哈希计算实际列表的顺序后维护实际列表的顺序?例如,<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)

perl hash data-structures perl-data-structures

20
推荐指数
5
解决办法
2万
查看次数