冒泡排序是比较经典的一种排序方法。冒泡排序主要就是从序列的左端开始重复比较相邻两个元素的大小 根据比较的结果来判断是否需要交换两个元素的位置 最终使得序列元素满足升序或降序排列。
python实现
def bubble_sort(list): # 冒泡排序 n len(list) flag False# 外层循环控制每轮的比较次数 for i in range(n-1): # 内层循环用于比较元素并交换 for j in range(n-i-1): if list[j] list[j 1] list[j],list[j 1] list[j 1], list[j] flag Ture if not flag: break print(list)
另外关于冒泡排序的时间复杂度
情况好时 列表元素按要求顺序排序 则只需要遍历一次列表 时间复杂度为O(n);
情况坏时 列表元素逆序排列 总的比较次数为 n-1 n-2 … 1, 时间复杂度为O n^2 .
如上



