Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Оптимальная сортировка   Найти похожие ветки 

 
Mr.F ©   (2005-06-06 16:28) [0]

Есть такая задача: дан массив, в нем куча элементов в массиве... (> 10^9)
Надо их отсортировать. Элементы не повторяются. Одна операция сравнения = далеко не один цикл процессора, поскольку элементами массива являются указатели на строки с нулевым символом в конце.
Нужен реальный алгоритм (код), который сведет к минимуму операции сравнения элементов.


 
Anatoly Podgoretsky ©   (2005-06-06 16:30) [1]

Такого массива в Дельфи быть не может.


 
Digitman ©   (2005-06-06 16:31) [2]


> операция сравнения = далеко не один цикл процессора, поскольку
> элементами массива являются указатели на строки с нулевым
> символом в конце


целиком строки что ли сравниваешь ? или как ?

уважающие себя алгоритмы поступают иначе ..


 
Digitman ©   (2005-06-06 16:32) [3]


> куча элементов в массиве... (> 10^9)


и точно) ... врешь и не моргаешь !)


 
Mr.F ©   (2005-06-06 16:34) [4]

> Такого массива в Дельфи быть не может.
Бывают такие массивы... дело в том, что это всего лишь array of Char, в котором непрерывно записаны строки, разделенные нулевым символом
> уважающие себя алгоритмы поступают иначе ..
И как же они поступают???


 
Mr.F ©   (2005-06-06 16:35) [5]

сорри... 10^6 :)))


 
Digitman ©   (2005-06-06 16:37) [6]


> Бывают такие массивы


угу ... и ты, конечно же, готов дать голову на отсечение. что своими глазами видел length(такого_массива) >= 10^9 .. )

нельзя ли поскромней ?) ... не врать хотя бы ?)


> И как же они поступают


некоторые сравнивают сначала длину (если есть готовая)
далее посимвольно, в цикле, с учетом кодировки и case-условий..


 
Digitman ©   (2005-06-06 16:39) [7]


> Элементы не повторяются


сразу квиксорт напрашивается


 
Mr.F ©   (2005-06-06 16:40) [8]

> некоторые сравнивают сначала длину (если есть готовая)
Готовая - есть, но помочь она ничем не может... ведь проверка в алгоритмах не на равенство, а < или >...
Так какие все-таки алгоритмы уважают себя???


 
Хинт ©   (2005-06-06 16:42) [9]

QuickSort (сортировка Хоара)


 
Digitman ©   (2005-06-06 17:08) [10]


> Mr.F ©   (06.06.05 16:40) [8]


> ведь проверка в алгоритмах не на равенство, а < или >...


если 1-я строка короче 2-й, то в зависимости от КОНКРЕТНЫХ выбранных критериев "равенства" можно сразу утверждать, что 1-я > 2-й, или 2-я > 1-й


 
Digitman ©   (2005-06-06 17:10) [11]


> какие все-таки алгоритмы уважают себя?


те самые, которые с учетом выбранной codepage и collation order спавнивают строки посимвольно



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

Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.088 c
14-1117819487
VEG
2005-06-03 21:24
2005.06.29
Кто заметил, когда пропал the5k.org ?


14-1117791500
emfw
2005-06-03 13:38
2005.06.29
Физическая модель


3-1116840124
aleliko
2005-05-23 13:22
2005.06.29
И снова картинки ...


3-1116333262
kyn66
2005-05-17 16:34
2005.06.29
Как переименовать столбец или таблицу Access?


1-1118054413
Gear
2005-06-06 14:40
2005.06.29
Удаление элемента из динамического массива.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский