Я могу помочь вам реализовать алгоритм быстрой сортировки на 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. Итак, начнем!