Java中的冒泡排序算法:数组排序程序和示例
什么是冒泡排序?
冒泡排序是一种简单的算法,它将数组的第一个元素与下一个元素进行比较。如果数组的当前元素在数值上大于下一个元素,则交换元素。同样,算法会遍历数组的整个元素。
在本教程中,我们将创建一个 JAVA 程序来实现冒泡排序。检查代码的输出,这将有助于您理解程序逻辑。
检查阿姆斯壮数的 Java 程序
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
java