冒泡排序

来源:互联网 发布:wifi流量控制软件 编辑:程序博客网 时间:2024/05/21 22:21
大泡在上,小泡在下——冒泡排序基本原理。
冒泡排序是经过n-1趟子排序完成的,第i趟子排序从第1个数至第n-i个数,若第i个数比后一个数大(则升序,小则降序)则交换两数。时间复杂度为o(n^2)。
第一趟比较后,最后一个数是最大的数。

#include<stdio.h>void mp_sort(int *p,int n){int i,h,k;for(h=n-1;h>=0;h--){for(i=0;i<=h;i++){if(*(p+i)>*(p+i+1)){k=*(p+i);*(p+i)=*(p+i+1);*(p+i+1)=k;}}}}void main(void){int i;int a[6]={6,5,4,3,2,1};mp_sort(a,6);for(i=0;i<6;i++)printf("%d ",a[i]); return 0;}