|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Sergey E.Sumin 2:5025/17 17 Dec 2003 11:40:01 To : All Subject : Re: Сортировка массива -------------------------------------------------------------------------------- .RFC-X-Complaints-To: news@news.relex.ru .RFC-X-Priority: 3 .RFC-X-MSMail-Priority: Normal .RFC-X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 From: "Sergey E.Sumin" <sumin@relex.ru> Здравствуйте! ----- Original Message ----- From: "Dmitry Ivanov" <fido@sadok.spb.ru> Newsgroups: relfido.ru.perl Sent: Wednesday, December 17, 2003 12:58 AM Subject: Сортировка массива > Hello All, > > Есть массив вида: > > $unsort[0][0] = 1; > $unsort[0][1] = 4; > $unsort[1][0] = 7; > $unsort[1][1] = 6; > $unsort[2][0] = 3; > $unsort[2][1] = 5; > > Хочу получить из него массив, отсортированный по второму элементу > каждой группы (пардон, если не очень правильно выразился), т.е.: > > $sort[0][0] = 1; > $sort[0][1] = 4; > $sort[1][0] = 3; > $sort[1][1] = 5; > $sort[2][0] = 7; > $sort[2][1] = 6; > > по $unsort[n][1], где n равно (0..2) грубо говоря... > > и как-то не пойму, как это сделать. Пробовал в лоб, но это не ну это не в лоб, а из пустого в порожнее... > работает: > > @sort = sort {$a[0][1] <=> $b[0][1]} @unsort; > > Как правильно сделать? @sort = sort {$a->[1] <=> $b->[1]} @unsort; или @sort = sort {$$a[1] <=> $$b[1]} @unsort; > > -- > P.S. директом пишите на sadok@..... > > Best regards, > Dmitry > > > Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru Сергей Сумин. --- Microsoft Outlook Express 6.00.2800.1106 * Origin: RELEX Inc. (2:5025/17@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/12143277f8871.html, оценка из 5, голосов 10
|