Встречается на собеседованиях • сегодня

Какие знаешь методы сортировки

Пузырьковая сортировка (Bubble Sort)
Простой алгоритм, сравнивающий соседние элементы и меняющий их местами, если они не в порядке.

java
for (int i = 0; i < arr.length - 1; i++) {
    for (int j = 0; j < arr.length - i - 1; j++) {
        if (arr[j] > arr[j + 1]) {
            int temp = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = temp;
        }
    }
}

Быстрая сортировка (Quick Sort)
Рекурсивный алгоритм с разделением массива через опорный элемент (pivot).

java
void quickSort(int[] arr, int low, int high) {
    if (low < high) {
        int pi = partition(arr, low, high);
        quickSort(arr, low, pi - 1);
        quickSort(arr, pi + 1, high);
    }
}

Сортировка слиянием (Merge Sort)
Делит массив пополам, сортирует части и объединяет их.

java
void mergeSort(int[] arr, int l, int r) {
    if (l < r) {
        int m = (l + r) / 2;
        mergeSort(arr, l, m);
        mergeSort(arr, m + 1, r);
        merge(arr, l, m, r);
    }
}

Сортировка вставками (Insertion Sort)
Постепенно строит отсортированную часть массива, вставляя элементы на нужные места.

Также есть Heap Sort, TimSort, Counting Sort (для целых чисел) и другие. В Java Arrays.sort() использует гибридные алгоритмы (например, TimSort для объектов).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы