NancyForever

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  阅读(68)  评论(0编辑  收藏  举报

导航