我有这样的一些对(数据已按%hash格式排序(数据规模较大)):
G1-G2
G2-G3
D1-D2
D3-D2
G3-D3
G2-D3
Perl脚本
Perl脚本
use strict;
use warnings;
use Data::Dumper;
my %hash;
$hash{'G1'}='G2';
$hash{'G2'}='G3';
$hash{'D1'}='D2';
$hash{'D3'}='D2';
$hash{'G3'}='D3';
$hash{'G2'}='D3';
print Dumper \%hash;
输出
$VAR1 = {
'G1' => 'G2',
'G2' => 'D3',
'D3' => 'D2',
'G3' => 'D3',
'D1' => 'D2'
};
这里因为键哈希重复而导致G2-G3缺失。
我需要添加重复项(我可以使用数组,但数据量很大系统会变慢)。
任何快速方法都可以添加一对并得到可能的配对条件输入。
如果 $input='G2'
则输出 G2->(G3,D3,G1)
如果 $input='D2'
则输出 D2->(D1,D3)