(转载)为什么冒泡排序要减一

冒泡排序:从头开始,两两比较,将最大的数放到末尾。然后再次从头开始,……。

外层循环:表示将最大值放到末尾的趟数。如果只剩一个,而其他的数都放到了末尾,那么这个数就没有必要进行比较,因此 -1。

内存循环:表示两两交换的次数。如果有9个数,第一趟需要进行8次比较(交换)。i 表示已经放到末尾的个数,因此需要两两交换的个数变成了 len - i,所以次数为 len - i - 1。

————————————————
版权声明:本文为CSDN博主「木槿656」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yiwen985/article/details/108941223

posted @ 2022-01-12 16:12  Makii119  阅读(255)  评论(0)    收藏  举报