本文主要是介绍Recursive Bubble Sort(递归冒泡排序),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
程序来源:Recursive Bubble Sort
迭代冒泡排序算法:
// Iterative Bubble Sort
bubbleSort(arr[], n)
{for (i = 0; i < n-1; i++) // Last i elements are already in place for (j = 0; j < n-i-1; j++) if (arr[j] > arr[j+1])swap(arr[j], arr[j+1]);
}
C++程序如下:
// C++ program for recursive implementation
// of Bubble sort
#include <bits/stdc++.h>
using namespace std;// A function to implement bubble sort
void bubbleSort(int arr[], int n)
{// Base caseif (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]);// Largest element is fixed,// recur for remaining arraybubbleSort(arr, n-1);
}/* Function to print an array */
void printArray(int arr[], int n)
{for (int i=0; i < n; i++)printf("%d ", arr[i]);printf("\n");
}// Driver program to test above functions
int main()
{int arr[] = {64, 34, 25, 12, 22, 11, 90};int n = sizeof(arr)/sizeof(arr[0]);bubbleSort(arr, n);printf("Sorted array : \n");printArray(arr, n);return 0;
}
程序运行结果:
Sorted array :
11 12 22 25 34 64 90
这篇关于Recursive Bubble Sort(递归冒泡排序)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!