Реализация алгоритма быстрой сортировки в Python: пошаговое руководство

Я могу помочь вам реализовать алгоритм быстрой сортировки на Python для сортировки заданного списка элементов [12, 20, 22, 16]. Вот код:

def partition(arr, low, high):
    i = low - 1
    pivot = arr[high]
    for j in range(low, high):
        if arr[j] <= pivot:
            i = i + 1
            arr[i], arr[j] = arr[j], arr[i]
    arr[i + 1], arr[high] = arr[high], arr[i + 1]
    return i + 1
def quickSort(arr, low, high):
    if low < high:
        pi = partition(arr, low, high)
        quickSort(arr, low, pi - 1)
        quickSort(arr, pi + 1, high)
arr = [12, 20, 22, 16]
n = len(arr)
quickSort(arr, 0, n - 1)
print("Sorted array:", arr)

Объяснение:
Алгоритм быстрой сортировки выбирает опорный элемент из массива и разделяет остальные элементы на два подмассива в зависимости от того, меньше они или больше опорного элемента. Затем подмассивы рекурсивно сортируются. В этой реализации мы выбираем последний элемент в качестве опорного.

Функция partitionпринимает три параметра: массив, нижний индекс и верхний индекс. Он выбирает опорный элемент и переупорядочивает массив так, чтобы все элементы, меньшие, чем опорный, располагались слева от него, а все элементы, превышающие опорный, — справа. Он возвращает индекс элемента поворота.

Функция quickSortпринимает три параметра: массив, нижний индекс и верхний индекс. Он рекурсивно вызывает себя для сортировки двух подмассивов до и после элемента поворота.

Наконец, мы вызываем функцию quickSortдля данного массива [12, 20, 22, 16] и печатаем отсортированный массив.

Блог

В этой статье блога мы рассмотрим алгоритм быстрой сортировки и способы его реализации в Python. Мы предоставим пошаговое руководство с примерами кода, которое поможет вам понять алгоритм и его реализацию. Алгоритм быстрой сортировки — широко используемый алгоритм сортировки, известный своей эффективностью и простотой. К концу этой статьи вы получите четкое представление о том, как работает быстрая сортировка и как ее реализовать в Python. Итак, начнем!