例如有下列序列:2 ,14, 6,17,19, 22,5, 11
冒泡排序的原理是:1.第一趟冒泡排序:从第一个元素开始,如果前一个元素大于第二个元素就将两个元素的互换,否则,继续比较,直到所有的元素都比较完。得到最后一个元素是所有元素中最大的一个。2.然后进行第二趟冒泡排序,将剩余元素中最大的元素交换到最后一个位置。3.将剩余元素继续进行步骤2,直到所有元素都排好为止。
具体实现:
void bubble_sort(int *array, int length)
{
int i = 0;
int j = 0;
int swap = 0;
for(i = 0; i < length - 1; i++){ //控制冒泡排列的趟数
for(j = 1; j < length - i; j++){ //控制交换的次数
if(array[j - 1] > array[j]){
swap = array[j];
array[j] = array[j - 1];
array[j - 1] = swap;
}
}
}
}