冒泡排序算法的结束条件是什么?

 我来答
惠企百科
2022-12-11 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部
冒泡排序最多执行n-1趟,n为待排序元素个数。\x0d\x0a冒泡的中心思想就是比较和交换,一般可以用两层循环来实现,没有必要加上结束条件,当循环结束的时候自动回跳出。\x0d\x0a当然,冒泡排序会遇到这样一个问题,就是一个序列已经是有序的了,这时就可以加上结束条件,来避免不必要的比较(当然依次进行比较也是可以的,只是每次比较后都没有交换的必要了),而结束的条件就是检测某一趟比较里有没有进行交换,如果没有进行交换就直接跳出循环。\x0d\x0a\x0d\x0a下面是具体的程序:\x0d\x0avoid bubblesort(int a[],int n)\x0d\x0a{\x0d\x0aint i,j;\x0d\x0afor(i=0;ia[j+1])\x0d\x0aswap(a[j],a[j+1]);\x0d\x0a}\x0d\x0a}\x0d\x0a} \x0d\x0a\x0d\x0a还有一种优化的算法,就是加上了结束条件,这种方法对于有序序列的性能将大大提升:\x0d\x0avoid bubblesort(int a[],int n)\x0d\x0a{\x0d\x0aint i,j,last;\x0d\x0ai=n-1;\x0d\x0awhile(i>0)\x0d\x0a{\x0d\x0alast=0;\x0d\x0afor(j=0;j
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式