利用perl 对两个数组进行操作。 目的是取2个数组只属于各自的元素,以及2个数组的共同元素。(可见下图)
代码:
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
my @a = (1,2,3,4,5,6,7,8,);
my @b = (1,9,0,4,15,6,12,8);
my %hash_a = map{$_=>1} @a;
my %hash_b = map{$_=>1} @b;
my %merge_all = map {$_ => 1} @a,@b;
my @a_only = grep {!$hash_b{$_}} @a;
my @b_only = grep {!$hash_a{$_}} @b;
my @common = grep {$hash_a{$_}} @b;
my @merge = keys (%merge_all);
print "A only :\n";
print Dumper(\@a_only);
print "B only :\n";
print Dumper(\@b_only);