Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Re: Простая и быстрая сортировка

Здравствуйте Keel!
По методу пузырьков - это очень просто. Берешь первый элемент
массива(списка) и сравниваешь со следующим. Если элемент больше, он
"всплывает", т.е. меняется местами с меньшим(или равном), если меньше, то
продолжает всплвать тот, которой больше. Повторяешь операцию пока не дойдешь
до конца списка. И так далее пока при очередном прогоне количество
перестановок не окажется нулевым. Вообще метод не очень быстрый и если у Вас
более тысячи элементов то ждать придется заметное время. Кстати, можно
использовать и обратный эффект, когда элементы тонут.
Про метод Шелла ни чего не знаю(или не помню, что одно и тоже).
Вообще с сортировкой или долго, или сложно. Достаточно просто искать
наименьший элемент, во многих языках есть встроенные функции для массивов, и
копируешь его в другой массив, на первое место, потом на второе следующий.
Недостаток, требуется в двое больше памяти, или работа динамическим
массивом.
Достаточно быстро сортируется список, если сравнивать не все элементы
подряд, а начиная с шага равного 1/10 от обшей длинны списка, с каждым новым
проходом уменьшая ее на единицу.
Или такой метод, делишь массив на два, находишь среднее значение, все что
меньше, в первую часть, что больше во вторую. рекурсивно повторяешь операцию
с половинками, когда длинна очередной части равна единице, сортировка
закончена.
Примеры... а на каком языке? Paskal, Delphi, Assembler, Basick(DOS).
С уважением monah
http:\\janalex.narod.ru
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru

http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   Fri, 9 Jan 2004 10:17:12 +0600 (#50356)