Описание: Сортировка Шелла для двумерного массива
Это одна из самых быстрых соритровок по отношению к классическим(пузырьковая, вставками и пр.).
Картинка:
тут информация к сортировке
Недостаток: неустойчивая.
Эта сортировка для ассоциативного массива, т.е. сортировка только по первой колонке по ключам. Можно передать на любую другую или даже сделать сортировку с выбором колонки.
Код/Пример:
Материалы:
wiki
кафедра Вычислительной Техники НГТУ
Есть разные формы установки gap. Многие предлагали свои решения, ихвы найдете здесь
Это одна из самых быстрых соритровок по отношению к классическим(пузырьковая, вставками и пр.).
Картинка:
- коричневая линия: сортировка пузырьком;
- синяя линия: шейкер-сортировка;
- розовая линия: сортировка выбором;
- желтая линия: сортировка вставками;
- голубая линия: сортировка вставками со сторожевым элементом;
- фиолетовая линия: сортировка Шелла.
тут информация к сортировке
Недостаток: неустойчивая.
Эта сортировка для ассоциативного массива, т.е. сортировка только по первой колонке по ключам. Можно передать на любую другую или даже сделать сортировку с выбором колонки.
Код/Пример:
Код:
Local $iStepD[] = [1, 4, 13, 40, 121, 364, 1093, 3280, 9841]
For $d = UBound($iStepD) - 1 To 0 Step -1
If $iStepD[$d] < UBound($aTemp) Then
For $i = $iStepD[$d] To UBound($aTemp) - 1
For $j = $i To $iStepD[$d] Step - $iStepD[$d]
If $aTemp[$j][0] < $aTemp[$j-$iStepD[$d]][0] Then
For $k = 0 To UBound($aTemp, 2) - 1
$t = $aTemp[$j][$k]
$aTemp[$j][$k] = $aTemp[$j-$iStepD[$d]][$k]
$aTemp[$j-$iStepD[$d]][$k] = $t
Next
EndIf
Next
Next
EndIf
Next
Материалы:
wiki
кафедра Вычислительной Техники НГТУ
Есть разные формы установки gap. Многие предлагали свои решения, ихвы найдете здесь