学编程不可避免都会接触算法,虽然python已经内置了相应的函数,但了解一下算法的原理还是很有必要的。
本文主要介绍排序算法的思想和python实现:
1、冒泡排序
算法描述:
重复地访问要排序的列表,一次比较两个元素,如果他们的顺序错误就把他们交换过来。访问列表的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
1 def bubble(bubbleList): 2 listLength = len(bubbleList) 3 while listLength > 0: 4 for i in range(listLength - 1): 5 if bubbleList[i] > bubbleList[i + 1]: 6 bubbleList[i],bubbleList[i+1] = bubbleList[i+1],bubbleList[i] 7 listLength -= 1 8 print bubbleList 9 10 11 if __name__ == '__main__': 12 bubbleList = [3, 4, 1, 2, 5, 8, 0,34,45,23,12,56,67,21] 13 bubble(bubbleList)