【发布时间】:2010-11-01 12:55:25
【问题描述】:
让我们说
%hash = (
key1 => 'one',
key2 => 'two',
key3 => 'three',
key4 => 'two',
key5 => 'one',
);
我想要两个数组:
-
这个数组应该有唯一的键/值
@array1=(key1 一键2 二键3 三)
-
这个数组应该按值计算重复项(例如,这里只有三个值是唯一的,所以“一”被找到两次,“二”又被找到两次,“三”被找到一次)。
@array2=(2 2 1)
【问题讨论】:
-
“唯一键/值”是否意味着键或值必须唯一,或者键和值的组合必须唯一,或者仅键必须唯一?
-
你假设@array2 的顺序是什么。换句话说,为什么“一”的计数在“二”的计数之前?
-
什么决定了保留哪些密钥?不要说 order,因为不同 perl 中返回键的顺序不一样,也和源文件中给出的顺序不一样。
-
@array2 的顺序应该类似于 value1 value2 因为我想从不同的键中删除相同的元素。 @array1 的顺序应该与 @array2 匹配以跟踪哪些键/值相同以及多少次?