my %seen; my @union = grep { not $seen{$_}++ } (@arr_in_1, @arr_in_2);