Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.19;
Скачать: CL | DM;

Вниз

Сортировка большого массива   Найти похожие ветки 

 
VasRog   (2004-11-26 18:39) [0]

Имеется очень большой динамическиймассив типа real(около 8 млн.элементов).  Какой метод сортировки массива по убыванию можно рассмотреть как самый быстрый?


 
begin...end ©   (2004-11-26 18:43) [1]

Для начала попробуйте QuickSort (быстрая сортировка). Алгоритм есть в Сети, реализация есть в Delphi.


 
MBo ©   (2004-11-26 18:46) [2]

QuickSort вполне подойдет(есть в модуле Classes).
Другие методы можно рассматривать, если массив в основном уже отсортирован.

Кроме того, существуют более быстрые методы, основанные на знании внутреннего представления вещественных типов (аналог поразрядной сортировки для целых чисел), но они требуют большого количества дополнительной памяти и сложны в реализации.


 
VasRog   (2004-12-01 16:22) [3]

вот сколько искал,  так и не нашел достойного описания алгорита.  не дадите ссылочку на алгоритм и какой-нибудь пример по нену?


 
MBo ©   (2004-12-01 16:30) [4]

>вот сколько искал,  так и не нашел достойного описания алгорита
НЕ ВЕРЮ!

>не дадите ссылочку
уже дали


 
VasRog   (2004-12-01 16:36) [5]

Вы имеете ввиду сеть что-ли?


 
Digitman ©   (2004-12-01 16:38) [6]


> VasRog   (01.12.04 16:22) [3]


в каталоге стандартных демо-проектов есть проект threads.dpr, демонстрирующий как собственно использование доп.тредов, так и 3-х различных широкораспространенных методов сортировки (в т.ч. "быстрая сортировка")

проект как раз наглядно и показывает, насколько эффективней при конкретно заданном неотсортированном массиве (с равномерным распределением) будет именно алгоритм "быстрой сортировки"

правда, демо-код алгоритмов сверстан для работы с ц/ч массивами, но чуть переделать его с целью адаптации к работе с массивами чисел в формате с п/з - плевое дело ...


 
VasRog   (2004-12-01 18:27) [7]

Большое спасибо.



Страницы: 1 вся ветка

Текущий архив: 2004.12.19;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.073 c
1-1101636516
Piter
2004-11-28 13:08
2004.12.19
Работа с классами в DLL


3-1100855013
Geoji
2004-11-19 12:03
2004.12.19
Выделить часть


14-1101437102
Думкин
2004-11-26 05:45
2004.12.19
С днем рождения! 26 ноября


1-1101906743
Змей
2004-12-01 16:12
2004.12.19
colordialog


4-1099838642
SPeller
2004-11-07 17:44
2004.12.19
Combobox и манифест ХР