Sort Hash by Keys Numerically : sort « Hash « Perl






Sort Hash by Keys Numerically

    


sub desc_sort_subject {
    $b <=> $a;           # Numeric sort descending
}
sub asc_sort_subject{
    $a <=> $b;           # Numeric sort ascending
}
%courses = (
        "101" => "I",
        "221" => "L",
        "300" => "A",
        "102" => "P",
        "103" => "P",
        "200" => "L",
);

foreach $key (sort asc_sort_subject(keys(%courses))) {
    printf "\t%-5d%s\n", $key, $courses{"$key"};
}
foreach $key (sort desc_sort_subject(keys(%courses))) {
    printf "\t%-5d%s\n", $key, $courses{"$key"};
}

   
    
    
    
  








Related examples in the same category

1.Hash Value Sorting
2.Numerically Sort a Hash by Values in Ascending Order
3.Numerically Sort a Hash by Values in Descending Order
4.Sort Hash by Keys in Reverse Order
5.Sort keys in a hash
6.Sort values in a hash
7.Sorting a Hash
8.Ordered hash
9.Using customized function to sort keys in a hash