冒泡

时间:2014-02-21 12:53:43   收藏:0   阅读:436

 

1    比较相邻的元素。如果第一个比第二个大,就交换他们两个。

2    对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数

3    针对所有的元素重复以上的步骤,除了最后一个

4   持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较

 

 

#include <stdio.h>

 

#define SIZE 8

 

void bublle_sort(int a[],int n)    //n为数组a的元素个数

 

{

 

      int i,j,temp;

 

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

 

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

 

                        if(a[i] > a[i+1])    //数组元素大小按升序排列

 

                        {

 

                                   temp = a[i];

 

                                   a[i] = a[i+1];

 

                                   a[i+1] = temp;

 

                         }

 

}

 

int main(){

 

      int number[SIZE] = {95, 45, 15, 78, 84, 51, 24, 12};

 

      int i;

 

      bublle_sort(number,SIZE);

 

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

 

      {

 

                  printf("%d ", number[i]);

 

      }

 

      printf("\n");

 

}

原文:http://www.cnblogs.com/yulang314/p/3558517.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!