gpt4 book ai didi

perl - 迭代具有数十亿行的文件,输出出现次数最多的行

转载 作者:行者123 更新时间:2023-12-02 20:47:29 26 4
gpt4 key购买 nike

迭代包含多行国家/地区的文件并打印出出现次数最多的国家/地区的最佳算法/方法是什么?

每一行都是一个字符串,并且每行只包含一个国家/地区名称。

假设可能有 10 亿个不同的国家/地区。 (国家是一个坏例子)

United States
Iran
India
United States
China
Iran
....
....
Canada //1 billionth line

最佳答案

# Count the unique elements.
my %hash;
while(<>) {
chomp;
$hash{$_}++;
}

# Find the key with the largest value.
sub largest_value {
my $hash = shift;

my ($big_key, $big_val) = each %$hash;

while (my ($key, $val) = each %$hash) {
if ($val > $big_val) {
$big_key = $key;
$big_val = $val;
}
}

return $big_key;
}

print largest_value(\%hash);

关于perl - 迭代具有数十亿行的文件,输出出现次数最多的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13852937/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com