Forum Webscript.Ru

Программирование => Perl => Тема начата: от 13 Января 2002, 00:13:55

Название: Сортировка массива
Отправлено: от 13 Января 2002, 00:13:55
Народ как отсортировать массив чисел по возрастанию в Perl... очень срочно нужно... я понимаю что есть sort фунция но как она работает незнаю... прошу напишите подробно!
Название: Сортировка массива
Отправлено: NAS от 13 Января 2002, 00:25:37
@x = sort (@y);
Название: Сортировка массива
Отправлено: от 14 Января 2002, 03:26:24
Да но он сортирует это так...
Пример:
1 10 11 12  4 47 6 9
вот!
а нада все подряд!
Название: Сортировка массива
Отправлено: Tankist от 14 Января 2002, 09:10:35
Цитировать
@x = sort (@y);

Это не совсем верно для числовой сортировки,
вернее так:
@sorted = sort { $a <=> $b } @Unsorted;
Название: Сортировка массива
Отправлено: AlieN от 29 Января 2002, 13:07:42
Слушай посмотри ман там есть функция которая сортирует натуральным алгоритмом. Помню на sort начинается :)
т.е. 1а 11 а 13а  и т.д. и т.п.
Название: угу
Отправлено: Green Kakadu от 30 Января 2002, 02:08:26
@by_num= sort {$a<=>$b} @erunda;#для чисел
@by_sym=sort {$a cmp $b} @erunda;#для строк
Название: а насчет хэша?
Отправлено: Arx от 15 Февраля 2002, 13:11:41
тоже самое. нужно отстортировать значения по возрастанию
подозреваю нужно использовать sort values, но как?
Название: в
Отправлено: Green Kakadu от 15 Февраля 2002, 14:43:02
Цитировать
тоже самое. нужно отстортировать значения по возрастанию


map {print "$_ => $hash{$_}\\n"} sort {$hash{$a}<=>$hash{$b}} keys %hash;