码迷,mamicode.com
首页 > 编程语言 > 详细

学习python 快速排序

时间:2015-02-13 18:38:37      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:快速排序   python   

def q(start , end , a):
    if start>= end :
        return
    else :
        mid = (start+end)/2
        i = start+1
        j = end
        key =a[start]
        while i<j:
            while i<=end and a[i]<key:
               i+=1
            while j>=start and a[j]>key:
               j-=1
            if i < j:
                tmp = a[i]
                a[i]=a[j]
                a[j]=tmp
        if a[start] > a[j]:
            tmp = a[start]
            a[start] = a[j]
            a[j] = tmp
        q(start,j-1,a)
        q(j+1,end ,a)


l = input('please input the length of array')
n = []
for x in range(l):
    n.append(input())
q(0,l-1, n)
print n
啊,写完了。

学习python 快速排序

标签:快速排序   python   

原文地址:http://blog.csdn.net/u011700281/article/details/43795929

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!