简介:冒泡排序(英语:Bubble sort)是一种较为简单的排序方式。在排序过程中,由于较小的数是像饮料中的气泡一样慢慢浮上来的,故得名冒泡排序。
核心思想:重复地走访要排序的元素列,依次比较两个相邻的元素,如果顺序错误就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
时间复杂度:在最好情况下(即v就有序),只需遍历一次数组即可完成排序。但在最坏情况下,需遍历n-1次数组,因此时间复杂度约为n平方级别。
代码样例:
#include<iostream>
using namespace std;
int n,a[1000];
int t;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<n;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(int i=1;i<=n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
运行结果: