my %h = (); $h{$_->[0]} = [$_->[1], undef,] for @a1; $h{$_->[0]}[1] = $_->[1] for @a2; my @arr = map {[$_, @{$h{$_}}]} sort keys %h;