Сортировка пузырьком в Java - простой и эффективный алгоритм
Сортировка пузырьком является одним из простых алгоритмов сортировки. Он получил свое название благодаря свойству более "легких" (меньших) элементов "всплывать" (постепенно перемещаться к концу массива), как пузырек в воде.
Алгоритм сортировки пузырьком состоит из нескольких проходов по массиву, на каждом из которых сравниваются два соседних элемента, и, если они находятся в неправильном порядке, меняются местами. Первый проход приводит к перемещению самого большого элемента в конец массива, второй - следующего по величине, и так далее.
Пример реализации сортировки пузырьком на языке Java:
java
public class BubbleSort {
public static void bubbleSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
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;
}
}
}
}
public static void main(String[] args) {
int[] arr = {5, 2, 8, 1, 3};
bubbleSort(arr);
System.out.println("Отсортированный массив:");
for (int num : arr) {
System.out.print(num + " ");
}
}
}
В данном примере функция `bubbleSort` принимает целочисленный массив и сортирует его по возрастанию. В основном методе `main` создается и заполняется массив, вызывается функция сортировки и выводится отсортированный массив. В результате работы программы будет выведено: `Отсортированный массив: 1 2 3 5 8`.
Как видно из кода, основная идея метода `bubbleSort` заключается в том, что на каждом проходе от начала массива к его концу сравниваются два соседних элемента и, если текущий элемент больше следующего, они меняются местами с помощью временной переменной `temp`. Это процесс повторяется до тех пор, пока весь массив не будет отсортирован в нужном порядке.