Artem3 Опубликовано 23 декабря, 2007 Жалоба Share Опубликовано 23 декабря, 2007 Приветствую! Перерыл Яндекс,Гугл в поисках объяснения и примеров восходящей/нисходящей поразрядной сортировки. Нашел инфу просто про поразрядную сортировку. Именно(!) восходящей/нисходящей нет. В некоторых источниках частным случаем для массива целых чисел указана сортировка посчетом. Из задания,которое мне дано следует, что сортировка подчсетом и поразрядная отличаются. Вообщем,я мало что понял. Если кто-нибудь разбирается объясните плз на примере массива целых чисел.Буду очень благодарен. Ссылка на комментарий Поделиться на другие сайты More sharing options...
mr.Faster Опубликовано 24 декабря, 2007 Жалоба Share Опубликовано 24 декабря, 2007 язык? Ссылка на комментарий Поделиться на другие сайты More sharing options...
Marik Опубликовано 24 декабря, 2007 Жалоба Share Опубликовано 24 декабря, 2007 Artem3 Может я чего-то неправильно понял, но вообще-то восходящая и нисходящая сортировка меняются друг на друга заменой сравнения в каждом символе. Это также как и с любой другой сортировкой. По умолчанию примеры даются для восходящей сортировки. А вот применять поразрядную сортировку к целым числам (во всяком случае стандартных типов) - это как-то странно. Насколько я понимаю, этот вид сортировки для цепочек символов изобретался (т.е. для слов). Ссылка на комментарий Поделиться на другие сайты More sharing options...
QQQ Опубликовано 24 декабря, 2007 Жалоба Share Опубликовано 24 декабря, 2007 Если кто-нибудь разбирается объясните плз на примере массива целых чисел.Буду очень благодарен. Нужно отсортировать по возрастанию простой массив из к элементов, А(к) procedure change(i, n) меняет местами элементы c номерами i и n Пример: Надо отсортировать по возрастанию массив чисел: 5 7 9 6 1 сравниваем первый элемент со вторым 5<7 Наибольший из них сравниваем с третьим элементом: 7<9 наибольший из предыдущих сравниваем со следующим 9>6 так как 9 больше 6 выполняем change(3, 4) ==> 57691 теперь 9 сравниваем с 1 и опять change(4, 5) Получаем => 57619. Последний элемент массива получается наибольший - он уже отсортирован. Повторяем это цикл для массива А без последнего элемента, то есть для к-1 5<7 7>6 change(2, 3) => 56719 7>1 change(3, 4) => 56179 четвертый элемент массива упорядочен Выполняем цикл для массива длинной к-2 5<6 6>1 change(2, 3) => 51679 Заканчиваем цикл для к-3 5>1 change(1, 2) => 15679 ЕНД. ----------------- Также можно это делать черех А(мах) Находим максимальное число в массиве длинной N, поочередно сравнивая А(мах) со всеми элементами массива, если какой-то элемент оказывается больше , то меняем их местами. А(мах) окажется N элементом отсортированного массива. Повторяем цикл для N-1. Cреди оставшихся элементов макимальный окажется на месте А(N-1) Ссылка на комментарий Поделиться на другие сайты More sharing options...
Artem3 Опубликовано 24 декабря, 2007 Автор Жалоба Share Опубликовано 24 декабря, 2007 язык? Вообще пишу на нетовском бэйсике. Но мне нужен просто смысл и алгоритм,а напишу сам. если знаешь,напиши пож-та. Artem3 Может я чего-то неправильно понял, но вообще-то восходящая и нисходящая сортировка меняются друг на друга заменой сравнения в каждом символе. Это также как и с любой другой сортировкой. По умолчанию примеры даются для восходящей сортировки. А вот применять поразрядную сортировку к целым числам (во всяком случае стандартных типов) - это как-то странно. Насколько я понимаю, этот вид сортировки для цепочек символов изобретался (т.е. для слов). Ты говоришь именно про поразрядную сортировку? Я тебя за незнаем слабо понял,если есть инфа-напиши подробней. Нужно отсортировать по возрастанию простой массив из к элементов, А(к) procedure change(i, n) меняет местами элементы c номерами i и n Пример: Надо отсортировать по возрастанию массив чисел: 5 7 9 6 1 Пасиб,смысл понетен. Только это нисходящая или восходящая поразрядная? Если у кого есть сцылки по теме, киньте плз Ссылка на комментарий Поделиться на другие сайты More sharing options...
mr.Faster Опубликовано 24 декабря, 2007 Жалоба Share Опубликовано 24 декабря, 2007 в пхп для этого готовые функции, для ассоциативных массивов также. в JS только для одномерных обычных не было при всем этом надобности писать сортировку вручную Ссылка на комментарий Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Заархивировано
Эта тема находится в архиве и закрыта для дальнейших ответов.