首先是数组的冒泡排序以及两种改进方法
void bubbleSort(int a[], int len)
{
int i, j, temp;
for(i=1; i<=len-1; i++)
for(j=0; j
a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
void bubbleSort(int a[], int len)
{
int i, j, temp, flag;
for(i=1; i<=len-1; i++){
flag = 0;
for(j=0; j
a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
flag = 1;
}
if(flag == 0)
break;
}
}
void bubbleSort(int a[], int len)
{
int j, k, temp, end;
end = len-1;
while(end > 0){
for(j=0; j<=end-1; j++){
if(a[j] > a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
k = j;
}
end = k;
}
}
}
然后是链表的冒泡排序