C++冒泡排序算法实例详解
冒泡排序是一种非常简单的排序算法,下面小编为大家整理了C++冒泡排序算法实例详解,希望能帮到大家!
大学学习数据结构与算法最开始的时候,就讲了冒泡排序;可见这个排序算法是多么的经典。冒泡排序是一种非常简单的排序算法,它重复地走访过要排序的数列,每一次比较两个数,按照升序或降序的规则,对比较的两个数进行交换。比如现在我要对以下数据进行排序:
10 3 8 0 6 9 2
当使用冒泡排序进行升序排序时,排序的步骤是这样的:
3 10 8 0 6 9 2 /pic/p>
3 8 10 0 6 9 2 /pic/p>
3 8 0 10 6 9 2 /pic/p>
……
3 8 0 6 9 2 10 /pic/p>
3 8 0 6 9 2 10 /pic/p>
3 0 8 6 9 2 10 /pic/p>
……
0 2 3 6 8 9 10
很简单,就是让大数沉入下面,小数慢慢上浮起来。冒泡排序的时间复杂度也为O(n^2)。
代码实现
复制代码 代码如下:
#include
using namespace std;
void BubbleSort(int arr[], int length)
{
int temp;
for (int i = 0; i < length; ++i)
{
for (int j = 0; j < length - i - 1; ++j)
{
if (arr[j] > arr[j + 1])
{
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main()
{
int arr[10] = {2, 4, 1, 0, 8, 4, 8, 9, 20, 7};
BubbleSort(arr, sizeof(arr) / sizeof(arr[0]));
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); ++i)
{
cout<<arr[i]<<" ";
}
cout<<endl;
return 0;
}
【C++冒泡排序算法实例详解】相关文章:
C语言冒泡排序算法实例12-19
C++选择排序算法实例02-25
C++插入排序算法实例11-22
C++归并排序算法实例02-09
c#冒泡排序算法02-03
C语言奇偶排序算法详解及实例代码11-12
C语言经典冒泡排序法详解09-07
C++ 排序插入排序详解10-24
c++快速排序详解10-26
- 相关推荐