冒泡排序 Bubble sort
冒泡排序是一种简单直观的排序算法,其算法执行流程如下

冒泡排序通过重复的访问待排序序列,一次比较两个元素,按照既定的顺序决定交换两个元素的位置,每次走访待排序序列会确定一个元素的位置,再在剩余的序列重复进行操作,
称其为冒泡排序的原因是最小(大)的元素会经过交换浮至序列末尾。
时间复杂度 O(N2):当N个数进行排序时,将进行T=[N*(N-1)]/2次,根据计算方法保留最高次N^2,因此选择排序的时间复杂度为O(N2);
空间复杂度 O(1) :因为排序中始终只用到了数组大小的空间,为常数,因此空间复杂度为O(1)。
python代码如下:
def bubble_sort(nums): for i in range(len(nums) - 1): for j in range(len(nums) - i - 1): if nums[j] > nums[j+1]: nums[j],nums[j+1] = nums[j+1],nums[j] return nums

浙公网安备 33010602011771号