use Data::Dumper; my %uniq; my @aoa = ( ['foo',0], # Changed from 'AoA' to 'aoa'. Thanks to bobf. ['foo',1], ['foo',2], ['foo',3], ['foo',4], ['foo',5],); @uniq{ @aoa[ 1 ... $#aoa ]->[-1] } = (); print Dumper \%uniq;