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

Python快速排序

时间:2014-09-03 12:48:36      阅读:343      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   os   ar   for   art   div   

快排,取一个key值,一般取第一个即可,将小于key的放到左边,大于key的放到右边,递归实现

bubuko.com,布布扣
 1 import random
 2 def quicksort(data, low = 0, high = None):
 3     if high == None:
 4         high = len(data) - 1
 5     if low < high:
 6         s, i, j = data[low], low, high
 7         while i < j:
 8             while i < j and data[j] >= s:
 9                 j = j - 1
10             if i < j:
11                 data[i] = data[j]
12                 i = i + 1
13             while i < j and data[i] <= s:
14                 i = i + 1
15             if i < j:
16                 data[j] = data[i]
17                 j = j - 1
18         data[i] = s
19         quicksort(data, low, i - 1)
20         quicksort(data, i + 1, high)
21 
22 data=[random.randint(1,100) for i in range(100)]
23 print(data)
24 quicksort(data)
25 print(data)
View Code

 

Python快速排序

标签:style   blog   http   color   os   ar   for   art   div   

原文地址:http://www.cnblogs.com/wizardjk/p/3953289.html

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