冒泡排序,是所有排序中用的最多和最易想起的一种排序算法。
其排序思想: 对未排序的相邻元素进行两两比较,找出未排序元素中的最值,并将其置入应有位置。
算法特点:
1) 一次遍历,即可在未排序元素中,找到一个最值(最大值或最小值)
2) 当进行第i次遍历时(以第0次为出发点),说明已经遍历了i次,因此已经对i个元素排好了序。
3) 在未排序元素中寻找最值时,按由小到大次序寻找,可找到最大值
按由大到小次序寻找,可找到最小值
程序代码:
1)首先确定最小值
// R[0...n-1] 为待排数组
// 先确定最小值
void BubbleSort(int R[],int n)
{
int i,j;
int t; // 用于交换的临时变量
BOOL bExchage;// 交换标志
for (i=0;i<n-1;i++) // 最多做n-1趟排序
{
bExchage=FA