for ( my $i = scalar(@$results) - 1; $i >= 0; $i-- ){ for ( my $j = 1; $j <= $i; $j++){ if ( $$results[$j - 1]{'hits'} < $$results[$j]{'hits'} ){ my $temp = $$results[$j - 1]; $$results[$j - 1] = $$results[$j]; $$results[$j] = $temp; } } } #### @$results = sort{ $b->{'hits'} <=> $a->{'hits'} } @$results; #### my $temp = $$results[$j - 1]; $$results[$j - 1] = $$results[$j]; $$results[$j] = $temp; #### ($$results[$j - 1], $$results[$j]) = ($$results[$j],$$results[$j - 1])