Удивительная история развития сортировки в JDK

С момента появления JDK для сортировки простых типов использовалась классическая (с одним опорным элементом) быстрая сортировка (Quicksort). В ноябре 2009 года в JDK 7 появился предложенный спикером улучшенный алгоритм быстрой сортировки Dual-Pivot Quicksort, который в 1,5–3,5 раза быстрее предыдущей версии. Тогда же и Timsort заменил Merge sort для сортировки объектов.

За последние 14 лет Dual-Pivot Quicksort неоднократно улучшался по сравнению с первоначальной версией. Какие оптимизации и приемы использовались? Как повышалась производительность? Как правильно тестировать сортировку? Эти и многие другие вопросы затронет спикер.

Доклад заинтересует не только разработчиков, но и математиков, любителей алгоритмов, тестировщиков, а также всех тех, кто стремится к еще более эффективному коду и кто хочет внести свой вклад в развитие JDK.


Владимир Ярославский,

СБЕР


Удивительная история развития сортировки в JDK
Владимир Ярославский,
СБЕР
С момента появления JDK для сортировки простых типов использовалась классическая (с одним опорным элементом) быстрая сортировка (Quicksort). В ноябре 2009 года в JDK 7 появился предложенный спикером улучшенный алгоритм быстрой сортировки Dual-Pivot Quicksort, который в 1,5–3,5 раза быстрее предыдущей версии. Тогда же и Timsort заменил Merge sort для сортировки объектов.

За последние 14 лет Dual-Pivot Quicksort неоднократно улучшался по сравнению с первоначальной версией. Какие оптимизации и приемы использовались? Как повышалась производительность? Как правильно тестировать сортировку? Эти и многие другие вопросы затронет спикер.

Доклад заинтересует не только разработчиков, но и математиков, любителей алгоритмов, тестировщиков, а также всех тех, кто стремится к еще более эффективному коду и кто хочет внести свой вклад в развитие JDK.
О докладчике
О докладчике
Более 25 лет разрабатывает на Java, творческий путь Владимира связан с такими компаниями, как TogetherSoft, Borland, Sun Microsystems, Oracle, EMC, Dell Technologies, сейчас трудится руководителем направления в Сбере.

С 2009 года вносит свой посильный вклад в развитие проекта OpenJDK.
Все спикеры SnowOne
Все спикеры SnowOne
Показать ещё
Партнёры SnowOne