Что такое пузырьковая сортировка?
Bubble sort — простой алгоритм, который сравнивает первый элемент массива со следующим. Если текущий элемент массива численно больше, чем следующий, элементы меняются местами. Аналогично, алгоритм будет проходить через весь элемент массива.
В этом руководстве мы создадим программу JAVA для реализации Bubble Sort. Проверьте вывод кода, который поможет вам понять логику программы
- package com.guru99;
- public class BubbleSort {
- public static void main(String[] args)
- {
- int arr[] ={860,8,200,9};
- System.out.println("---Array BEFORE Bubble Sort---");
- printArray(arr);
- bubbleSort(arr);//sorting array elements using bubble sort
- System.out.println("---Array AFTER Bubble Sort---");
- printArray(arr);
- }
- static void bubbleSort(int[] array)
- {
- int n = array.length;
- int temp = 0;
- for(int i=0; i < n; i++) // Looping through the array length
- { System.out.println("Sort Pass Number "+(i+1));
- for(int j=1; j < (n-i); j++)
- {
- System.out.println("Comparing "+ array[j-1]+ " and " + array[j]);
- if(array[j-1] > array[j])
- {
- //swap elements
- temp = array[j-1];
- array[j-1] = array[j];
- array[j] = temp;
- System.out.println(array[j] + " is greater than " + array[j-1]);
- System.out.println("Swapping Elements: New Array After Swap");
- printArray(array);
- }
- }
- }
- }
- static void printArray(int[] array){
- for(int i=0; i < array.length; i++)
- {
- System.out.print(array[i] + " ");
- }
- System.out.println();
- }
- }
Вывод:
860 8 200 9 Sort Pass Number 1 Comparing 860 and 8 860 is greater than 8 Swapping Elements: New Array After Swap 8 860 200 9 Comparing 860 and 200 860 is greater than 200 Swapping Elements: New Array After Swap 8 200 860 9 Comparing 860 and 9 860 is greater than 9 Swapping Elements: New Array After Swap 8 200 9 860 Sort Pass Number 2 Comparing 8 and 200 Comparing 200 and 9 200 is greater than 9 Swapping Elements: New Array After Swap 8 9 200 860 Sort Pass Number 3 Comparing 8 and 9 Sort Pass Number 4 ---Array AFTER Bubble Sort--- 8 9 200 860