BubbleSort
冒泡排序 - 相邻两个元素进行比较。
冒泡排序的思想
指定两个指针,从数组头部开始,把相邻的两个元素进行比较,当前一个元素大于后一个元素时,交换他们的位置,否则,位置不变,直到数组末尾,完成一轮比较。
结束一轮比较,获得数组中最大的元素,在数组末尾。接下来重复这个过程,在剩下的元素中进行比较,最终得到一个有序的数组。
代码示例
Java
实现
1 | import java.util.Arrays; |
外部循环控制循环次数,内部循环实现每一轮冒泡处理:先元素比较,然后进行元素交换。
加入一个有序标记,如果元素没有发生交换,证明数组已经是有序的,结束循环。
Python
实现
1 | class Bubble(): |
- 简化版
1 | def sort(nums): |