交换排序法是指借助于数据元素之间的相互交换进行排序的一种方法。冒泡排序与快速排序法都属于交换排序法。
冒泡排序法的基本过程是,首先,从表头开始往后扫描线性表。在扫描过程中,逐次比较相邻两个元素的大小,若相邻两个元素中,前面的元素大于后面的元素,则将他们交换称之为削去了一个逆序。扫描过程中不断地将相邻两个元素中的大者往后移动,最后就将线性表中最大者换到了表的最后,这也是线性表中最大元素应有的位置。
void bubblesort(int data[],int n)
{
int i,j;
for(i=0;i < n;i++)
{
for(j=0; j < n – i; j++)
{
if(data[j] > data[j+1])
{
int tmp = data[j];
data[j] =data[j+1];
data[j+1] =tmp;
}
}
}
}