Алгоритмы сортировки
Народ развлекается забавной задачкой про stl и quicksort.
Заглянув в исходники stl, я понял, что называть это "обычным quicksort" это какое-то явное издевательство.
И еще оказалось, что обычный quicksort из дельфи работает раза в два медленнее чем этот хитрый std::sort, хотя я думаю, кроме всех оптимизаций, там еще косвенный вызов функции сравнения в дельфи свою лепту вносит.
Заглянув в исходники stl, я понял, что называть это "обычным quicksort" это какое-то явное издевательство.
И еще оказалось, что обычный quicksort из дельфи работает раза в два медленнее чем этот хитрый std::sort, хотя я думаю, кроме всех оптимизаций, там еще косвенный вызов функции сравнения в дельфи свою лепту вносит.
no subject
(no subject)
(no subject)
(no subject)
no subject
no subject
1. Инлайнинг функции сравнения
2. Сортировка коротких последовательностей с помощью вставок.
Остальное мелкие оптимизации - типа немного разных алгоритмов для граничных и внутренних подпоследовательностей.
Кроме 1-го всё можно без труда повторить на дельфе для конкретного типа.