Forum Webscript.Ru

Программирование => Perl => Тема начата: Q_ от 13 Марта 2004, 13:00:05

Название: Сортировка хэша
Отправлено: Q_ от 13 Марта 2004, 13:00:05
Помогите пожалуйста отсортировать хэш %hash. Нужно отсортировать по значению(value), не теряя при этом логических связей с ключом. При использовании foreach $value (sort values %hash) { ... можно использовать лишь $value, а $key не работает. После этого надо вывести все элементы в виде $key=$value.
Название: Сортировка хэша
Отправлено: ondr от 13 Марта 2004, 13:18:46
for ( sort { $hash{$a} cmp $hash{$b} } keys %hash ) { # cmp, <=>, etc...

    print "$_=$hash{$_}\\n";
}

perldoc -f sort
Название: Сортировка хэша
Отправлено: arto от 13 Марта 2004, 13:28:04
sort { $hash{$a} > $hash{$b} } keys %hash
Название: Сортировка хэша
Отправлено: Q_ от 13 Марта 2004, 14:29:21
Спасибо, получилось.