冒泡排序
冒泡排序,就是想鱼在水底吐泡一样,每一次迭代都会将一个当前迭代最大或者最小的数放在尾部,这样经过多次迭代之后,线性表就是有序的了。
Python实现
冒泡排序 - 正序
def bubbleSortWithAsc(nums: list) -> list:
length = len(nums)
order = True
for i in range(1, length):
for j in range(0, length - i):
if nums[j] > nums[j + 1]:
nums[j], nums[j + 1] = nums[j + 1], nums[j]
order = False
if order:
break
return nums
冒泡排序 - 逆序
def bubbleSortWithDesc(nums: list) -> list:
length = len(nums)
order = True
for i in range(1, length):
for j in range(0, length - i):
if nums[j] < nums[j + 1]:
nums[j], nums[j + 1] = nums[j + 1], nums[j]
order = False
if order:
break
return nums