C 语言:一个简单的冒泡排序

 冒泡排序是经常用到的一种排序算法,他的原理和实现方式是怎么样的呢?


1.冒泡排序算法思想:

一言以蔽之:从第一个元素开始,比较相邻两个元素的值的大小,把较大或者较小的数字放在后面。进行n-1次迭代就可以得到排序之后的结果。

C 语言:一个简单的冒泡排序_第1张图片

上图来自:https://blog.csdn.net/qq_41679818

2.主要代码

外层循环是循环的次数,10个元素的数组,只需要循环9次;内层循环是遍历数组,每次遍历的时候,都不需要遍历有序的部分。再进行判断,是否第一个数字比第二个数字大,如果a[j]>a[j+1],就交换两个数字的值。

//进行冒泡排序	
for(i = 1; i < 10; i++) 
{
	for(j = 0 ; j < 10-i; j ++)
	 {
 		if(a[j] > a[j + 1])	
 		{
			k = a[j];
			a[j] = a[j + 1];
			a[j + 1] = k;	
		 }
 	}		
}

3.结果

C 语言:一个简单的冒泡排序_第2张图片

 

你可能感兴趣的:(C/C++,数据结构,数据结构,排序算法,算法)