Related Articles

# Java Program for Recursive Bubble Sort

• Last Updated : 28 Jun, 2021

Background :
Bubble Sort is the simplest sorting algorithm that works by repeatedly swapping the adjacent elements if they are in wrong order.
Following is iterative Bubble sort algorithm :

```// Iterative Bubble Sort
bubbleSort(arr[], n)
{
for (i = 0; i < n-1; i++)

// Last i elements are already in place
for (j = 0; j  arr[j+1])
swap(arr[j], arr[j+1]);
} ```

Recursion Idea.

1. Base Case: If array size is 1, return.
2. Do One Pass of normal Bubble Sort. This pass fixes last element of current subarray.
3. 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 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!

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.  To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

In case you wish to attend live classes with experts, please refer DSA Live Classes for Working Professionals and Competitive Programming Live for Students.

My Personal Notes arrow_drop_up