冒泡排序,就是一种最基础的交换排序
基本思想:通过相邻两个数的比较,将较大的数放在最后面,每一趟确定一个数的最终位置,重复这个过程,直到序列有序
具体的实现过程为:
废话不多说,直接上代码:
arr = [2, 3, 67, 5, 56, 25, 56, 65]
# 只循环 len(arr)-1 次就好,因为如果就剩最后一个元素的话,它肯定是最大的
for i in range(len(arr)-1):
# 每走一趟,第 len(arr)-i 个元素是最大的
for j in range(len(arr)-i-1):
# 上面代码里之所以减一,是为了防止下面代码中出现下标溢出异常
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
print(arr)
运行结果为:
从上面的代码以及图片中的演示过程可以看出,冒泡排序算法的性能为: