您的位置:首页 > 理论基础 > 数据结构算法

数据结构与算法之冒泡排序

2015-01-16 18:38 281 查看
冒泡(起泡)排序是一种比较简单的基本排序,思想:假如我们对10个数进行从小到大排序。思路是将相邻的两个数比较,将小的调到前头,大的数字下沉。

设数组长度为N。

1、N个数排序,需要循环进行N-1趟排序。

2、每一趟的操作步骤:比较相邻的前后两个数据,如果前面数据大于后面的数据,就将两个数据交换。

3、在第 j 趟排序中要进行N - j 次两两比较。

#include<stdio.h>

void maopao(int array[],int n) //冒泡排序详解

{

int i,j,d;

int temp;

for(i=0;i<n-1;i++)
//总共进行了n-1趟排序

{

for(j=0;j<n-i-1;j++)

{

if(array[j]>array[j+1])//根据题意交换元素的位置

{

temp=array[j];

array[j]=array[j+1];

array[j+1]=temp;

}

}

}

}

int main()

{

int i;

int array[]={3,1,15,11,89,5};

int size=sizeof(array)/sizeof(int);

//selectsort(array,size);

maopao(array,size);

for(i=0;i<size;i++)

printf("%5d",array[i]);

printf("\n");

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: