Java Program for Recursive Bubble Sort Last Updated : 23 Jul, 2025 Comments Improve Suggest changes 7 Likes Like Report 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. 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)); } } Time Complexity: O(n2) where n is the size of the array.Auxiliary Space: O(1) Please refer complete article on Recursive Bubble Sort for more details! Comment K kartik Follow 7 Improve K kartik Follow 7 Improve Article Tags : Sorting Java Programs DSA BubbleSort Explore DSA FundamentalsLogic Building Problems 2 min read Analysis of Algorithms 1 min read Data StructuresArray Data Structure 3 min read String in Data Structure 2 min read Hashing in Data Structure 2 min read Linked List Data Structure 2 min read Stack Data Structure 2 min read Queue Data Structure 2 min read Tree Data Structure 2 min read Graph Data Structure 3 min read Trie Data Structure 15+ min read AlgorithmsSearching Algorithms 2 min read Sorting Algorithms 3 min read Introduction to Recursion 14 min read Greedy Algorithms 3 min read Graph Algorithms 3 min read Dynamic Programming or DP 3 min read Bitwise Algorithms 4 min read AdvancedSegment Tree 2 min read Binary Indexed Tree or Fenwick Tree 15 min read Square Root (Sqrt) Decomposition Algorithm 15+ min read Binary Lifting 15+ min read Geometry 2 min read Interview PreparationInterview Corner 3 min read GfG160 3 min read Practice ProblemGeeksforGeeks Practice - Leading Online Coding Platform 6 min read Problem of The Day - Develop the Habit of Coding 5 min read Like