Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

โปรแกรม Java สำหรับ Recursive Bubble Sort


ต่อไปนี้เป็นโปรแกรม Java สำหรับ Recursice Bubble Sort -

ตัวอย่าง

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("The array after implementing bubble sort is ");
      System.out.println(Arrays.toString(my_arr));
   }
}

ผลลัพธ์

The array after implementing bubble sort is
[0, 12, 21, 31, 45, 63, 67, 89]

ฟังก์ชันที่ชื่อ 'Demo' มีฟังก์ชันสำหรับการจัดเรียงแบบฟองสบู่ หากความยาวของอาร์เรย์เท่ากับ 1 อาร์เรย์จะถูกส่งคืน มิฉะนั้น อาร์เรย์จะถูกทำซ้ำ และหากองค์ประกอบที่ตำแหน่งแรกมากกว่าองค์ประกอบในตำแหน่งถัดไป องค์ประกอบจะถูกสลับ

หลังจากการผ่านครั้งแรก องค์ประกอบที่ใหญ่ที่สุดจะได้รับการแก้ไข และการเรียงลำดับฟองจะถูกเรียกบนองค์ประกอบทั้งหมดยกเว้นครั้งเดียวที่ใหญ่ที่สุด ในฟังก์ชันหลัก อาร์เรย์จะถูกกำหนดและส่งผ่านเป็นพารามิเตอร์ไปยังฟังก์ชันการจัดเรียงแบบฟอง