设想被排序的数组R[1..N]垂直竖立,将每个数据元素看作有重量的气泡,根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R,凡扫描到违反本原则的轻气泡,就使其向上"漂浮"(交换位置),如此反复进行,直至最后任何两个气泡都是轻者在上,重者在下为止。
void bubblesort(int a[],int size)
{
for(int i=0;i<size-1;i++)
{
for(int j =size -1;j >i;j--)
{
if(a[j-1]>a[j];)
{
int temp = a[j-1];
a[j-1]=a[j];
a[j]=temp;
}
}
}
}