冒泡排序
(一)冒泡排序基本思想:将相邻的两个数两两比较,按从小到大或者从大到小的顺序排好,不断将大的数(或者小的数)往下沉。
(二)基本过程
比如我们现在要排序int a[] = {4,3,8,2,5}
所以过程大概就是:通过每一趟的比较就会确认一个数的位置,那么在下一趟的比较重,比较的次数就会少一次。剩下的一次类推
(三)代码如下:
def bubble_sort(lists): # 冒泡排序 count = len(lists) for i in range(0, count): for j in range(i + 1, count): if lists[i] > lists[j]: lists[i], lists[j] = lists[j], lists[i] return lists
(四)时间复杂度:最好的情况下时间复杂度为O(n):当待排序的数据已经按顺序排好的情况下
最坏的情况下时间复杂度为O(n^2):因为要比较n-1趟,,每一趟又要比较(n-1-i)次