快速排序 递归调用
来源:互联网 发布:seo教程网 编辑:程序博客网 时间:2024/05/20 10:55
快速排序将数组进行分解,对两个子问题进行排序。
快速排序首先要找到划分数组的基准,我们以数组的第一个元素为例。
然后将数组划分为大于该基准的数组与小于该基准的数组。
分别再对两个子数组进行快速排序。
python代码如下:
def quicksort(list): if len(list)<2: return list else: pivot=list[0] less=[x for x in list[1:] if x <=pivot] greater=[y for y in list[1:] if y>pivot] return quicksort(less)+[pivot]+quicksort(greater)
测试结果:
print quicksort([6,2,3,9,7,5,61])[2, 3, 5, 6, 7, 9, 61]
阅读全文
0 0
- 快速排序递归调用
- 快速排序 递归调用
- 快速排序(递归调用版)
- 快速排序法(递归调用)
- 快速排序 --递归调用一个函数初始值被写死
- 用纯C语言实现快速排序,分递归调用法和非递归调用法。
- 快速排序,递归算法
- 快速排序递归算法
- 递归实现快速排序
- 快速排序(递归)
- 快速排序(递归)
- 快速排序----非递归
- 快速排序+递归实现
- 快速排序【递归版】
- 递归快速排序
- 递归快速排序
- 快速排序算法(递归)
- 递归版快速排序
- Bzoj 4922(字符串匹配新高度+DP)
- Codeforces Round #423 (Div. 1, rated, based on VK Cup Finals) E. Rusty String(fft)
- 判断元素出栈、入栈顺序的合法性
- 多态,抽象作业
- 23种设计模式之——代理模式
- 快速排序 递归调用
- jni访问java的属性和方法
- N的N次方的最高位
- 类和对象
- ListView和CheckBox实现全选,全不选和反选
- 文件内容读写的几种方式
- c++-关于菱形继承&虚继承的问题总结
- Java的基本数据类型和引用数据类型的区别
- PAT 乙级1031.查验身份证