冒泡排序
1.算法描述
对整个元素中,两两相邻元素互相比较,如果前一个元素比后一个大,交换位置,直到整个元素列表不再发生变化。
2.python
def bubble_sort(lists): count=len(lists) for i in range(0,count): for j in range(i+1,count): if lists[i]>lists[j]: lists[i],lists[j]=lists[j],lists[i] return lists
插入排序
1.算法描述
在一个已认为有序的列表下,插入一个新的元素,遍历这个列表中的元素,从头开始遍历,直到遍历到新元素大于前一个元素,小于后一个元素时,插入到这个位置
2.python实现
def Insert_sort(lists): for i in range(1,len(lists)): key=lists[i] j=i-1 while j>=0 and lists[j]>key: lists[j+1]=lists[j] j=j-1 lists[j+1]=key return lists
希尔排序
1.算法描述
2.python实现
选择排序
1.算法描述
有一个无序需要排序的列表。和一个有序的空列表,每次从无序列表中找到列表中最小的元素,依次插入到有序的空列表中。
2.python实现
def selection_sort(list): n=len(list) for i in range(0,n): min=i for j in range(i+1,n): if list[j]<list[min]: min=j if min !=i: list[min],list[i]=list[i],list[min] return list