冒泡排序是非常容易理解和实现,以从小到大排序举例:
设数组长度为N。
1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。
2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。
3.N=N-1,如果N不为0就重复前面二步,否则排序完成。
按照定义很容易写出代码:
复制代码 代码如下:
//冒泡排序1
void BubbleSort1(int a[], int n)
{
int i, j;
for (i = 0; i < n; i++)
for (j = 1; j < n - i; j++)
if (a[j - 1] > a[j])
Swap(a[j - 1], a[j]);
}
下面对其进行优化,设置一个标志,如果这一趟发生了交换,则为true,否则为false。明显如果有一趟没有发生交换,说明排序已经完成。
复制代码 代码如下:
//冒泡排序2
void BubbleSort2(int a[], int n)
{
int j, k;
bool flag;
k = n;
flag = true;
while (flag)
{
flag = false;
for (j = 1; j < k; j++)
if (a[j - 1] > a[j])
{
Swap(a[j - 1], a[j]);
flag = true;
}
k--;
}
}
再做进一步的优化。如果有100个数的数组,仅前面10个无序,后面90个都已排好序且都大于前面10个数字,那么在第一趟遍历后,最后发生交换的位置必定小于10,且这个位置之后的数据必定已经有序了,记录下这位置,第二次只要从数组头部遍历到这个位置就可以了。
复制代码 代码如下:
//冒泡排序3
void BubbleSort3(int a[], int n)
{
int j, k;
int flag;
flag = n;
while (flag > 0)
{
k = flag;
flag = 0;
for (j = 1; j < k; j++)
if (a[j - 1] > a[j])
{
Swap(a[j - 1], a[j]);
flag = j;
}
}
}
冒泡排序毕竟是一种效率低下的排序方法,在数据规模很小时,可以采用。数据规模比较大时,最好用其它排序方法。
相关推荐:
SEO提供:如何通过精准的SEO策略提升网站流量与品牌影响力,刷关键词排名立的火星
ChatGPT最新版本更新内容:智能对话体验再升级,更多功能与应用,ai证伪
提升写作效率,释放创意潜力文章生成AI软件的未来
seo组建需要什么条件,seo建站的步骤 ,ai肌肉宝宝
怎么用AI写文章:高效创作的秘诀
文章AI扩写:突破创作瓶颈,提升写作效率的秘密武器
ChatGPT怎么突然不能打开了?你需要了解的原因与解决办法,ai写作有什么问题吗怎么解决
ChatGPT服务部分恢复:人工智能助力全新体验,ai对象菜单
SEO外包:提升网站排名与品牌曝光的最佳选择,大创建设网站
ChatGPT破解:让AI打破语言与思维的边界,ai模板vis
怎样使用AI写文章:释放创作潜能,提升写作效率
seo规范是什么,seo行业标准 ,啊龙ai音乐
AI搜索相似文章怎么做?揭秘高效文章检索的核心技术!,程式ai软件
SEO手段:提升网站流量的制胜法宝,idc网站怎么推广
SEO公司核心业务是什么?揭秘提升网站排名的奥秘,写作助手ai一键生成作文在线
ChatGPT遇到问题?如何解决“您的应用遇到问题,无法正常启动”困境?,ai下载增强版
ChatGPT页面空白不乏登录:让你秒变职场高手与生活智囊,百度ai 腾讯ai
ChatGPT怎么打不开了?解决办法,轻松恢复畅通无阻!,ai订酒店ai对话
SEO译为:网站排名背后的优化策略,会展中心网站优化
ChatGPT页面打不开怎么办?这些解决方法让你轻松访问AI助手!,分散ai
Bing学术搜索结果不显示时间?如何解决这一问题,提升学术研究效率!,ai怎么参考线
SEO实现:如何通过SEO优化提升网站流量与排名,南京市公司网站推广
SEO未来:如何在变革中抢占先机,迎接数字营销的新纪元,台州网站建设分析和总结
AI缩写在线:让人工智能助力你行业前沿技术,ai uhrehara
SEO王:掌控搜索引擎优化的至高法则,助力企业飞速腾飞,网站动作优化在哪里下载
SEO做网站点击:提升网站流量的关键策略,国内ai写作论文
seo进阶买什么书运营,seo入门难吗 ,没有ai软件怎么打开ai图片
SEO可以帮助网站在搜索引擎中获得较高的排名-助力企业数字化转型的关键,赵立新AI换脸图片对比
ChatGPT页面无法翻阅?带你深度了解背后的原因与解决方案,pdf怎么转换ai文字
从“官网扒下来”看企业数字化转型的未来,摄影营销策略推广文案
SEO注意事项:助力网站流量提升的关键策略,济宁快速seo优化价格
ChatGPT为什么访问不了?全面解析及解决方案,ai首页设计
360AI写作怎样?助力创作的新风尚,ai到访
优化分析:提升企业效益的关键策略,山东大网站建设
AI批量文章工具,让写作变得高效与轻松,cs机器人ai
Chatget免费网站版无需登录,畅享无限对话体验!,工业 Ai 视觉检测
SEO优化公司一般怎么优化?揭秘专业SEO服务的操作流程,人工智能ai写作软件 哪一个好
互联网资源的无限潜力:如何利用数字世界为个人和企业创造价值,信阳网站建设正规公司
为什么要seo排名,为什么要做seo推广 ,AI写作开启创意新世界
“爱站”:开启网站优化与流量增长的新纪元,seo入门ppt
seo要学什么技术,seo要学什么技术好 ,ai.fale
seo要懂些什么软件,seo常用软件 ,ai写作网站网址大全
SEO包含的秘密:让你的网站轻松排上首页,新媒体营销推广方案目录
ChatGPT破解版电脑:如何获得更强大的AI助手,提升工作与学习效率,ai预设动画
优化收费,助力企业提升效益,实现共赢,宜州餐饮网站建设
SEO优化知识全解析:提升网站排名的秘密武器,ai出错合集
什么是SEO可以自学吗,seo零基础可以自学吗 ,ai1紫
交友群都有哪些,交友群是干什么的 ,ai猫csgo
SEO技巧提升网站流量:打造高效网站的关键策略,Ai测脸相
好用的AI写作软件免费推荐:创作新境界!