Весь этот алгоритм сортировки представляет собой оптимизированную быструю сортировку, которая использует медиану из 3 проиндексированных элементов для получения сводного элемента, а код, который вы показали, является оптимизацией, когда входной массив (или из рекурсии) небольшой. *
Хотя цитируемая часть является вставной сортировкой, без сомнения.
Но это неправильно, просто посмотрите на эту часть алгоритма, поэтому , используя эту ссылку :
- Строки 573-577 делают сортировку вставкой для небольших входных массивов.
- Линии 581-593 выбирают элемент поворота, используя медиану 3.
- Строки 596-611 выполняют сортировку с использованием элемента pivot.
- Строки 614-616 помещают элементы элемента разделения обратно в середину (быстрая сортировка).
- Строки 619-622 рекурсии двух половин входного массива.
Хорошее объяснение о быстрой сортировке можно найти на http://en.wikipedia.org/wiki/Quicksort.