OberonCore https://forum.oberoncore.ru/ |
|
(стабильная) сортировка для списков, и не очень для массивов https://forum.oberoncore.ru/viewtopic.php?f=47&t=6887 |
Страница 1 из 1 |
Автор: | arisu [ Среда, 11 Январь, 2023 11:12 ] | ||
Заголовок сообщения: | (стабильная) сортировка для списков, и не очень для массивов | ||
две маленькие процедуры, удобные, в принципе, для копипасты в свои проекты. на деле процедуры универсальные: работа с массивами и со списками делается через специальные worker records. первая — HeapSort, вторая — сортировка списков (одно- или двусвязных, циклических или нет) методом MergeSort. сортировка списков, полагаю, особенно интересна: она не требует дополнительной памяти, и обладает всеми полагающимися MergeSort'у свойствами. в сортировке списка пример, как сортировать список файлов или каталогов, полученый из Files. собственно, для этого оно мне и понадобилось; решил поделиться с народом: может, ещё кому пригодится. оригинальный код — Simon Tatham, перевод с C на D, и потом на Component Pascal — мой. а хипсорт совершенно обычный, «ничей».
|
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |