冒泡排序真的是入门基础啦,下面就让我们来实现一下~
1.冒泡排序的思想:每次比较两个相邻元素,如果他们的顺序错误,就把它们交换位置;
2.冒泡排序的原理:每一趟只能讲一个数归位,如果有n个数进行排序,只需将n-1个数归位,也就是说要进行n-1趟操作(每一趟会归位一个最值所以已经归位的数不用再比较)
3.时间复杂度:O(n^2)
4.我的第一次实现:
numbers = [12,5,69,3,45,78,86,57,2]
for j in range(0,len(numbers)-1):
for I in range(0,len(numbers)-1):
if numbers[i]>=numbers[i+1]:
a=numbers[i+1]
numbers[i+1] = numbers[i]
numbers[i] = a
print numbers
可以看到整个代码还是很幼稚的,对python没有深刻的理解,下面是比较好的写法👇
numbers = [12,5,69,3,45,78,86,57,2]
for j in range(0,len(numbers)-1):
for i in range(0,len(numbers)-1-j):
if numbers[i]>=numbers[i+1]:
number[i],number[i+1] = number[i+1],number[i]
print numbers
我会持续更新哒,希望大家喜欢~