所谓冒泡,就是将元素两两之间进行比较,谁大就往后移动,直到将最大的元素排到最后面,接着再循环一趟,从头开始进行两两比较,而上一趟已经排好的那个元素就不用进行比较了。
冒泡排序的思想: 每次比较两个相邻的元素, 如果他们的顺序错误就把他们交换位置。
冒泡排序原理: 每一趟只能将一个数归位, 如果有n个数进行排序,只需将n-1个数归位, 也就是说要进行n-1趟操作(已经归位的数不用再比较)。
缺点: 冒泡排序解决了桶排序浪费空间的问题, 但是冒泡排序的效率特别低
python冒泡排序的代码实现
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 li = [33, 4, 15, 1, 456, 75, 45, 30, 20, 78, 99, 100, 67, 23, 10, 7] 5 print("排序前:", li) 6 for j in range(1, len(li)): 7 for i in range(len(li) - j): 8 if li[i] > li[i + 1]: 9 temp = li[i] 10 li[i] = li[i + 1] 11 li[i + 1] = temp 12 print("排序后:", li)