冒泡排序(日志13)

作用:最常用的排序算法,对数组内元素进行排序

步骤(升序):

比较相邻的元素。如果第一个比第二个大,就交换他们两个。

对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。

针对所有的元素重复以上的步骤,除了最后一个。

持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

示例:

待排序数组:4 2 8 0 5 7 1 3 9

#include <iostream>
using namespace std;
int main()
{
	int a[9] = { 4,2,8,0,5,7,1,3,9 };
	for(int i=0;i<9-1;i++)
	{
		for(int j=0;j<9-i-1;j++)
		{
			if(a[j]>a[j+1])
			{
				int temp = a[j];
				a[j] = a[j + 1];
				a[j + 1] = temp;
			}
		}
	}
	for(int i=0;i<9;i++)
	{
		cout << a[i]<<" ";
	}
	return 0;
}

注意:

(外层循环)排序总轮数=元素个数-1;

(内层循环)每轮对比次数=元素个数-排序轮数-1;

全部评论

相关推荐

05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
_mos_:我以为手抄报简历就已经很顶了,没想到还有表格简历
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-27 14:11
很喜欢小米的新车,校招薪资每月22k,攒多久能买?
测试糕手手:别看工资,先看现金流存款。有50W存款以上再考虑,车是消耗品,选适合自己的重要。你有钱就当我没说过
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务