"Res-6ren">
gpt4 book ai didi

perl - 按值和键对哈希进行排序(按顺序)

转载 作者:行者123 更新时间:2023-12-02 09:14:13 34 4
gpt4 key购买 nike

我正在寻找一种好方法,在 Perl 中先按值排序,然后再按键排序。

示例:

 my %userids = (
williams => "Marketing",
smith => "Research",
johnson => "Research",
jones => "Marketing",
brown => "Marketing",
davis => "Research"
);

输出:

Marketing: brown
Marketing: jones
Marketing: williams
Research: davis
Research: johnson
Research: smith

请注意,是第一个排序级别。第二个排序级别是。知道如何以优雅且高性能的方式做到这一点吗?谢谢!

最佳答案

很好的引用:http://www.misc-perl-info.com/perl-sort.html#shv

#!/usr/bin/perl

my %userids = (
williams => "Marketing",
smith => "Research",
johnson => "Research",
jones => "Marketing",
brown => "Marketing",
davis => "Research"
);

foreach (sort { ($userids{$a} cmp $userids{$b}) || ($a cmp $b) } keys %userids)
{
print "$_: $userids{$_}\n";
}

关于perl - 按值和键对哈希进行排序(按顺序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7791958/

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