首页 > 编程语言 > 详细

起泡法排序

时间:2014-11-28 14:09:16      阅读:304      评论:0      收藏:0      [点我收藏+]

起泡法的思路是:将相邻的两个数比较,将小的调到前头。

可以推知,如果有 n 个数,则要进行 (n-1) 轮比较和交换。在第一轮要进行 (n-1) 次两两比较,在 j 轮中要进行 (n-j) 次两两比较。

下面将10个数从小到大进行排序:

#include<iostream>
using namespace std;
int main() {
	int a[11];
	int i, j, t;
	cout<<"input 10 numbers:\n";
	for (i=1; i<11; i++) {
		cin>>a[i];
	}
	cout<<endl;
	for (j=1; j<=9; j++) {
		for(i=1; i<=10-j; i++) {
			if (a[i] > a[i+1]) {
				t = a[i];
				a[i] = a[i+1];
				a[i+1] = t;
			}
		}
	}
	cout<<"the sorted numbers: \n";
	for (i=1; i<11; i++) {
		cout<<a[i]<<endl;
	}
	cout<<endl;
	return 0;
}

 

起泡法排序

原文:http://www.cnblogs.com/humingx/p/4128311.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!