/
githubmirror
/
interview
Обзор
Документация
Войти
/
githubmirror
/
interview
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Algorithm/ShellSort.h
16 строк
501 B
huihut
修改排序算法代码
16 апр 2018, 08:38
16 апр 2018, 08:38
91d24f1
Код
Авторство
О чём код?
// 希尔排序:每一轮按照事先决定的间隔进行插入排序,间隔会依次缩小,最后一次一定要是1。 template<typename T> void shell_sort(T array[], int length) { int h = 1; while (h < length / 3) { h = 3 * h + 1; } while (h >= 1) { for (int i = h; i < length; i++) { for (int j = i; j >= h && array[j] < array[j - h]; j -= h) { std::swap(array[j], array[j - h]); } } h = h / 3; } }