Basic 1: Bubble_sort 冒泡排序
1.for (int i:arr) 使用方法,实现数组的逐个遍历

注释:
for (int i:arr){ //变量i就是对后面的数组逐一遍历的意思。
System.out.println(i+" ");
}
2.数组中断越界问题

总结:小细节处很容易出现纰漏,在0下标处要思考是否越界的问题。
3.倒序排列

4.Bubble_Sort优化版本
为什么需要对我们的冒泡排序做出一些改进呢?
时间复杂度o(n^2),如何降低我们的时间复杂度
试想一种情况,如果我们在某一趟,后面的数字已经排列有序,(体现形式:某一趟开始,数字没有发生交换了)我们还需不需要继续比较下去?
不需要,这也方便我们节省资源。


总结:在学习数据结构和算法的时候,1.我们需要关注到执行的逻辑,flag在if里面和外面概念就完全不同。2.性能优化,就需要找到关键的节点,比如 何时已经排序完毕。
参考文章:https://blog.csdn.net/u010853261/article/details/54891710
https://www.runoob.com/w3cnote/java-sorting-algorithm-analysis-and-implementation.html
本文详细介绍了冒泡排序的基本原理和实现,包括使用for循环遍历数组的方法,以及如何处理数组越界问题。此外,还探讨了冒泡排序的优化策略,当数组在某趟遍历中未发生交换时,可以提前结束排序,从而提高效率。同时,强调了在学习数据结构和算法时,关注逻辑和性能优化的重要性。
821

被折叠的 条评论
为什么被折叠?



