Изменения

Перейти к: навигация, поиск

Быстрая сортировка

616 байт добавлено, 20:06, 24 мая 2012
Нет описания правки
Quicksort(A, p, r)
if p < r
then q = Partition(A, p, r)
Quicksort(A, p, q)
Quicksort(A, q + 1, r)
</wikitex>
Для сортировки всего массива необходимо выполнить процедуру <tex>Quicksort(A, 1, length[A])</tex>===Разбиение массива===Основной шаг алгоритма сортировки {{---}} процедура <tex>Partition</tex>, которая переставляет элементы массива <tex>A[p..r]</tex> нужным образом:<wikitex> Partition(A, p, r) x = A[p] i = p - 1 j = r + 1 while true do repeat j = j - 1 until A[j] \le x repeat i = i + 1 until A[i] > x if i < j then поменять A[i] и A[j] else return j</wikitex>
Анонимный участник

Навигация