Программа Java для рекурсивной пузырьковой сортировки
Опубликовано: 20 Января, 2022
Пузырьковая сортировка - это простейший алгоритм сортировки, который работает, многократно меняя местами соседние элементы, если они находятся в неправильном порядке.
Ниже приводится итеративный алгоритм пузырьковой сортировки:
// Итеративная пузырьковая сортировка bubbleSort (arr [], n) { для (я = 0; я <п-1; я ++) // Последние i элементов уже на месте для (j = 0; j <ni-1; j ++) если (arr [j]> arr [j + 1]) своп (arr [j], arr [j + 1]); }
Recursion Idea.
- Base Case: If array size is 1, return.
- Do One Pass of normal Bubble Sort. This pass fixes last element of current subarray.
- Recur for all elements except last of current subarray.
Java
// Java program for recursive implementation // of Bubble sort import java.util.Arrays; public class GFG { // A function to implement bubble sort static void bubbleSort( int arr[], int n) { // Base case if (n == 1 ) return ; // One pass of bubble sort. After // this pass, the largest element // is moved (or bubbled) to end. for ( int i= 0 ; i<n- 1 ; i++) if (arr[i] > arr[i+ 1 ]) { // swap arr[i], arr[i+1] int temp = arr[i]; arr[i] = arr[i+ 1 ]; arr[i+ 1 ] = temp; } // Largest element is fixed, // recur for remaining array bubbleSort(arr, n- 1 ); } // Driver Method public static void main(String[] args) { int arr[] = { 64 , 34 , 25 , 12 , 22 , 11 , 90 }; bubbleSort(arr, arr.length); System.out.println( "Sorted array : " ); System.out.println(Arrays.toString(arr)); } } |
Please refer complete article on Recursive Bubble Sort for more details!