my @ser_a; for my $aref (@$ha) { push @ser_a, join ',', sort {$a <=> $b} @$aref; } my @ser_b; for my $bref (@$hb) { push @ser_b, join ',', sort {$a <=> $b} @$bref; } print "They are "; unless ( (join ',', sort @ser_a) eq (join ',', sort @ser_b)) { print "not "; } print "equal\n";