बबल सॉर्ट में आसन्न जोड़े की तुलना करता है और यदि वे गलत क्रम में हैं तो उन्हें स्वैप कर देते हैं। इस प्रकार के बबल सॉर्ट में हम रिकर्सिव फ़ंक्शन का उपयोग करते हैं जो स्वयं को कॉल करता है।
Input:53421 Output:12345
स्पष्टीकरण
पुनरावर्ती (सेल्फ़-कॉलिंग) फ़ंक्शन का उपयोग आसन्न जोड़े की तुलना करता है और यदि वे गलत क्रम में हैं तो उन्हें तब तक स्वैप करते हैं जब तक कि सरणी क्रम में न हो
उदाहरण
#include <iostream> using namespace std; void bubbleSort(int arr[], int n) { for (int i = 0; i < n - 1; i++) { if (arr[i] > arr[i + 1]) { int temp = arr[i]; arr[i] = arr[i+1]; arr[i+1] = temp; } } if (n - 1 > 1) { bubbleSort(arr, n - 1); } } int main() { int arr[] = { 5,4,2,1,3 }; int n = 5; bubbleSort(arr, n); for (int i = 0; i < n; i++) { cout<< arr[i]<<"\t"; } return 0; }