时间复杂度O(N2)
进行n-1次每一次将一个最小的数(或最大的数)归位(最后一个数排好序),两两比较进行交换。
#include<bits/stdc++.h>
#define me(x , y) memset(x , y , sizeof(x))
#define SC scanf
#define rep(i , j , n) for(int i = j ; i < n ; i ++)
#define red(i , n , j) for(int i = n-1 ; i >= j ; i--)
#define INF 0x3f3f3f3f
#define mod 1000000007
#define PI acos(-1)
using namespace std;
typedef long long ll ;
int a[109];
int n ;
void bubble()
{
rep(i , 1 , n){//n-1次操作
rep(j , 0 , n-i){//n-i次遍历
if(a[j]>a[j+1]){
swap(a[j] , a[j+1]);
}
}
}
}
int main()
{
cin >> n;
rep(i , 0 , n){
SC("%d" , &a[i]);
}
bubble();
rep(i , 0 , n){
cout <<a[i]<<" ";
}
cout << endl;
return 0;
}
原文链接: https://www.cnblogs.com/nonames/p/12286099.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;
也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/328172
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!