冒泡排序:
将邻近的数字两两进行比较,按照从大(小)到小(大)的顺序进行交换,
每一趟下来就会有使得最大或者最小的数字冒到本趟循环的最后一个数字。
代码如下:
//冒泡排序 void maopao_sort(int unsort[],int length) { cout<<"冒泡排序:"<<endl; //总共要循环n-1趟 for(int i = 0; i < length - 1; i++) { //每一趟循环的次数为 n-已经排好的值-1 for(int j = 0; j < length - i-1; j++) { int temp = 0; //将最大的冒到最后面 是连续两个之间的交换 if(unsort[j] > unsort[j+1]) { temp = unsort[j]; unsort[j] = unsort[j+1]; unsort[j+1] = temp; } } cout<<"第"<<i+1<<"趟:"; for(int k = 0; k < length; k++) { cout<<unsort[k]<<" "; } cout<<endl; } }
运行结果如下:
原文:http://www.cnblogs.com/JuneXiangBlogs/p/5282958.html