Skip to content

Сортировка сравнением. Понятие инверсии. Сортировка пузырьком.

Определения

Алгоритм сортировки — это алгоритм для упорядочения элементов в списке. В случае, когда элемент списка имеет несколько полей, поле, служащее критерием порядка, называется ключом сортировки.

Сортировка сравнением - это один из основных подходов к сортировке, который заключается в сравнении элементов массива и их перестановке в соответствии с порядком. Сортировка пузырьком - это один из простейших алгоритмов сортировки сравнением.

Понятие инверсии в сортировке означает пару элементов массива, которые находятся в неправильном порядке. Например, в массиве [3, 1, 2] имеется две инверсии: (3, 2) и (3, 1). Чем меньше инверсий в массиве, тем ближе он к отсортированному состоянию.

Сортировка пузырьком

Идея - пока соседние элементы не в порядке, меняем их местами.

Работает путем последовательного сравнения соседних элементов массива и их перестановки, если они находятся в неправильном порядке. Алгоритм повторяет этот процесс несколько раз, пока массив не будет отсортирован. Сложность O(n^2)

python
def bubbleSort(arr):
	n = len(arr)
	for i in range(n - 1):
		for j in range(n - i - 1):
			if arr[j] > arr[j + 1]:
				arr[j], arr[j + 1] = arr[j + 1], arr[j]