python中的排序的实现
1. 冒泡排序: 两两进行比较 稳定排序 时间复杂度O(n^2)
代码实现:
def bubbleSort(l):
assert(type(l)==type(['']))
if len(l)==1 or len(l)==0:
return l
for i in xrange(len(l)):
for j in xrange(len(l)-i-1):
if l[j]>l[j+1]:
l[j],l[j+1]=l[j+1],l[j]
return l
2. 选择排序: 后面的都和标志位进行比较 比标志位小则进行交换 时间复杂度O(n^2)
def select_Sort(L):
assert(type(L)==type(['']))
if len(L)==0 or len(L)==1:
return L
for i in xrange(len(L)):
min=i
for j in xrange(i+1,len(L)):
if L[j]<L[min]:
L[j],L[min]=L[min],L[j]
return L
posted on 2016-05-30 19:45 NancyForever 阅读(76) 评论(0) 收藏 举报
浙公网安备 33010602011771号