遍历文件,如果邻近的两个元素的顺序不对,就将两者交换,重复这样的操作直到整个文件排好序。冒泡排序的执行速度比选择排序和插入排序都要慢。
1 template <class Item> 2 void compexch(Item &A, Item &B) 3 {if (B < A) exch(A, B)} 4 5 template <class Item> 6 void bubble(Item a[], int l, int r) 7 { 8 for (int i = l; i < r; i++) 9 for (int j = r; j > i; j--) 10 compexch(a[j-1], a[j]); 11 }