Java程序实现冒泡排序

气泡排序是一种简单的排序算法。该排序算法是基于比较的算法,其中比较每对相邻元素,如果元素顺序不正确,则将其交换。该算法不适用于大型数据集,因为其平均和最坏情况下的复杂度为〇(n2),其中n是项数。

示例

public class BubbleSort {
   static void bubbleSort(int[] arr) {
      int n = arr.length;
      int temp = 0;

      for(int i = 0; i < n; i++) {
         for(int j=1; j < (n-i); j++) {
            if(arr[j-1] > arr[j]) {
               temp = arr[j-1];
               arr[j-1] = arr[j];
               arr[j] = temp;
            }
         }
      }
   }
   public static void main(String[] args) {
      int arr[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };
      System.out.println("Array Before Bubble Sort");

      for(int i = 0; i < arr.length; i++) {
         System.out.print(arr[i] + " ");
      }
      System.out.println();
      bubbleSort(arr);
      System.out.println("Array After Bubble Sort");

      for(int i = 0; i < arr.length; i++) {
         System.out.print(arr[i] + " ");
      }
   }
}

输出结果

Array Before Bubble Sort
2 5 -2 6 -3 8 0 -7 -9 4
Array After Bubble Sort
-9 -7 -3 -2 0 2 4 5 6 8