Java递归冒泡排序程序

下面是递归冒泡排序的Java程序

示例

import java.util.Arrays;
public class Demo{
   static void bubble_sort(int my_arr[], int len_arr){
      if (len_arr == 1)
      return;
      for (int i=0; i<len_arr-1; i++)
      if (my_arr[i] > my_arr[i+1]){
         int temp = my_arr[i];
         my_arr[i] = my_arr[i+1];
         my_arr[i+1] = temp;
      }
      bubble_sort(my_arr, len_arr-1);
   }
   public static void main(String[] args){
      int my_arr[] = {45, 67, 89, 31, 63, 0, 21, 12};
      bubble_sort(my_arr, my_arr.length);
      System.out.println("实现冒泡排序后的数组是 ");
      System.out.println(Arrays.toString(my_arr));
   }
}

输出结果

实现冒泡排序后的数组是
[0, 12, 21, 31, 45, 63, 67, 89]

一个名为'Demo'的函数包含了执行冒泡排序的函数。如果数组的长度为1,则返回数组。否则,遍历数组,如果第一个位置的元素大于下一个位置的元素,则交换元素。

在第一次遍历之后,最大的元素将被修复,冒泡排序将对除最大元素外的所有元素调用一次。在main函数中,定义了数组,并将其作为参数传递给冒泡排序函数。