找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 6065|回复: 2

[代码与实例] 使用python 实现非常简洁的快速排序算法

50

主题

1057

帖子

1108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1108

活跃会员热心会员最佳导师默默耕耘突出贡献优秀版主荣誉管理论坛元老

blueelwang 发表于 2014-11-5 18:00:31 | 显示全部楼层 |阅读模式
使用python 实现非常简洁的快速排序算法

  1. def quickSort (arr):
  2.     """ Quicksort a list

  3.     :type arr: list
  4.     :param arr: List to sort
  5.     :returns: list -- Sorted list
  6.     """
  7.     if not arr:
  8.         return []

  9.     pivots = [x for x in arr if x == arr[0]]
  10.     lesser = quickSort([x for x in arr if x < arr[0]])
  11.     greater = quickSort([x for x in arr if x > arr[0]])

  12.     return lesser  + pivots + greater

  13. test_array = [1 ,4,5,7,8,9,90,3,2,3,4]
  14. sorted_array = quickSort (test_array)
  15. print sorted_array
复制代码



回复

使用道具 举报

4

主题

13

帖子

13

积分

贫民

积分
13
loottp 发表于 2015-5-24 20:05:02 | 显示全部楼层
列表方法sort同样效果
回复 支持 反对

使用道具 举报

0

主题

2

帖子

2

积分

贫民

积分
2
yzg100 发表于 2018-1-24 17:05:38 | 显示全部楼层
python 实现的代码好简洁,喜欢。感谢分享。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表