冒泡排序

Posted 1271908407boy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冒泡排序相关的知识,希望对你有一定的参考价值。

冒泡排序
1.  依次比较第一第二个值,第二第三直到n-1与n个值是第一趟排序(依次执行n-1次排序),因为第一次找出最大值,第二次找出第二大值, 要比较n-1次,则剩下的值为最小值
2.  如果第一个值比第二个值大,将两个值调换
#include<stdio.h>
void Bubble_sort(int *a,int n)
{
 int i,j;
 int temp;  //调换a[j]与a[j+1]时用到的中间变量
 for(i=0;i<n-1;i++)  //n个数据比较n-1次
 {
  for(j=0;j<n-1-i;j++)  //每一次找出一个值在数组末尾排好顺序,则下一次排序不用比较已经排好顺序的值了
  {
   if(a[j]>a[j+1])
   {
    temp = a[j];    //调换数值位置
    a[j] = a[j+1];
    a[j+1] = temp;
   }
  }
 }
}
int main(int argc, const char *argv[])
{
 int a[] = {67,51,37,86,65,36,88,54,6,24};
 Bubble_sort(a,10);
 int i;
 for(i=0;i<10;i++)
  printf("%5d",a[i]);
 printf("\n");
 return 0;
}

以上是关于冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

nodejs实现冒泡排序和快速排序

java编程的冒泡等排序示例

深度解析(十五)冒泡排序

冒泡排序

拓扑排序(图)、冒泡排序、插入排序

冒泡排序