冒泡排序算法是一个耳熟能详的算法,在我们学习计算机的专业课的时候,在课本中经常会见到该程序,作为一个非常简单的例子程序。如果你不能默写该算法,那么你就没学过计算机的相关课程。好了,不说闲话了。
冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。
//冒泡排序(小数上升,大数下沉)
#include<stdio.h>
typedef int Status;
#define TRUE 1
#define FALSE 0
//将a中整数序列重新排列成自小到大的有序的整数序列
void bubble_sort(int a[],int n)
{
int i,j,t;
<span style="color:#ff0000;">Status change;
</span> for(i=n-1,change=TRUE;i>=1 && change;--i)//外循环
{
<span style="color:#ff0000;">change=FALSE;//设置change的作用是,当该序列提前有序的时候,就不用再往下进行比较了,该序列已经是有序的了
</span> for(j=0;j<i;j++)//内层循环
{
if(a[j] > a[j+1]) /