我有一个程序可以查找目录中的所有文件,并创建一个名称和大小的哈希数组。如何在perl中按值排序哈希数组?
例如
%files = ("file1" => 10, "file2" => 30, "file3" => 5);
我希望能够通过大小降序对文件排序和名称/值添加到一个新的数组。
例如
%filesSorted = ("file2" => 30, "file1" => 10, "file3" => 5);
我发现有很多方法可以通过数值数组排序,然后打印值,但是这不是我想要的。
这是没有意义的说明了这一点。哈希本质上是未排序的。你的'%files'和'%filesSorted'是等价的;您只需编写'%filesSorted =%files;'即可获得相同的效果。 – ruakh 2012-03-12 00:19:56
[基于perl中的哈希中的值进行排序的简单方法]的可能重复(http://stackoverflow.com/questions/5972224/the-simple-way-to-sort-based-on-values-in- a-hash-in-perl) – 2012-03-12 00:21:59
欢迎来到StackOverflow。发布新问题前请使用搜索(或谷歌);许多已经被问及回答。 – 2012-03-12 00:22:37