冒泡排序
2017-06-11 13:35 tlnshuju 阅读(152) 评论(0) 编辑 收藏 举报冒泡排序就是整个过程就像气泡一样上升。单向冒泡排序的基本思想(如果由小到大排序):对于给定的n个记录,从第一个记录開始依次对相邻的两个记录进行比較。当前面的记录大于后面的记录时,交换其位置,进行一轮的比較和换位置后。n个记录中最大的数位于第n个位置;然后对前n-1个记录进行第二轮的比較;反复该过程直到最后剩余一个元素为止。
#include<iostream> using namespace std; void swap(int &a, int &b){ int temp = a; a = b; b = temp; } void bubbleSort(int *a, int length){ int mark = length - 1; for(int i = 0; i < length - 1; i++){ for(int j = 0; j < mark; j++){ if(a[j] > a[j + 1]){ swap(a[j], a[j+1]); } } mark--; } } void main(){ int a[] = {2,4,1,121,9,111,8,10,12,0}; int length = sizeof(a)/sizeof(a[0]); bubbleSort(a,length); for(int i = 0; i < length; i++){ cout<<a[i]<<" "; } cout<<endl; }
输出结果: