Back to questions
СБЕР
Junior — Middle
64
Какой временной сложности у алгоритма пузырьковой сортировки?
Companies where asked
Answer from AI
sobes.tech AI
Алгоритм пузырьковой сортировки имеет временную сложность:
- В худшем и среднем случае: O(n²), где n — количество элементов в массиве.
- В лучшем случае (если массив уже отсортирован): O(n), благодаря оптимизации с флагом, который прекращает сортировку, если за проход не было обменов.
Пример на Java:
void bubbleSort(int[] arr) {
int n = arr.length;
boolean swapped;
for (int i = 0; i < n - 1; i++) {
swapped = false;
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
swapped = true;
}
}
if (!swapped) break; // массив уже отсортирован
}
}