当前位置:  编程技术>python

python快速排序代码实例

    来源: 互联网  发布时间:2014-09-04

    本文导语:  一、 算法描述: 1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数。  二、python快速排序代码 ...

一、 算法描述:

1.先从数列中取出一个数作为基准数。
2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。
3.再对左右区间重复第二步,直到各区间只有一个数。

 二、python快速排序代码

代码如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-

def sub_sort(array,low,high):
    key = array[low]
    while low < high:
        while low < high and array[high] >= key:
            high -= 1
        while low < high and array[high] < key:
            array[low] = array[high]
            low += 1
            array[high] = array[low]
    array[low] = key
    return low


def quick_sort(array,low,high):
     if low < high:
        key_index = sub_sort(array,low,high)
        quick_sort(array,low,key_index)
        quick_sort(array,key_index+1,high)


if __name__ == '__main__':
    array = [8,10,9,6,4,16,5,13,26,18,2,45,34,23,1,7,3]
    print array
    quick_sort(array,0,len(array)-1)
    print array

结果:
[8, 10, 9, 6, 4, 16, 5, 13, 26, 18, 2, 45, 34, 23, 1, 7, 3]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 13, 16, 18, 23, 26, 34, 45]


    
 
 

您可能感兴趣的文章:

  • Python namedtuple(命名元组)使用实例
  • python实现的重启关机程序实例
  • Python 3 Tkinter教程之事件Event绑定处理代码实例
  • python调用短信猫控件实现发短信功能实例
  • Python文件操作类操作实例详解
  • python 基础学习第二弹 类属性和实例属性
  • Python实现冒泡,插入,选择排序简单实例
  • Python 时间处理datetime实例
  • Python实现类继承实例
  • Python continue语句用法实例
  • python3编写C/S网络程序实例教程
  • 在python中的socket模块使用代理实例
  • python实现进程间通信简单实例
  • python字典多条件排序方法实例
  • python中enumerate的用法实例解析
  • python解析xml文件实例分享
  • python的绘图工具matplotlib使用实例
  • Python Tkinter简单布局实例教程
  • Python中__call__用法实例
  • 使用Python判断IP地址合法性的方法实例
  • Python中apply函数的用法实例教程
  • python字符串排序方法
  • python 算法 排序实现快速排序
  • python 实现插入排序算法
  • python冒泡排序算法的实现代码
  • python 快速排序代码
  • python实现排序算法
  • python插入排序算法的实现代码
  • Python学习笔记_数据排序方法
  • python选择排序算法的实现代码
  • python算法学习之桶排序算法实例(分块排序)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • python学习手册中的python多态示例代码
  • Python获取网页编码的方法及示例代码
  • 用python代码做configure文件
  • python中的深拷贝(deepcopy)和浅拷贝(copy)介绍及代码参考
  • 生成Python代码的UML插件 PyUML
  • python下xml解析库lxml最新版下载安装以及代码示例
  • python 布尔操作实现代码
  • Python类的构造函数,析构函数以及垃圾回收机制详细介绍及代码举例
  • python代码制作configure文件示例
  • python字符串格式化输出及相关操作代码举例
  • python判断端口是否打开的实现代码
  • 数据结构:图(有向图,无向图),在Python中的表示和实现代码示例
  • python类型强制转换long to int的代码
  • python 简易计算器程序,代码就几行
  • 打开电脑上的QQ的python代码
  • python中使用urllib2获取http请求状态码的代码例子
  • 一则python3的简单爬虫代码
  • python 数据加密代码
  • Python实现3行代码解简单的一元一次方程
  • python利用elaphe制作二维条形码实现代码
  • Python不使用print而直接输出二进制字符串
  • 让python同时兼容python2和python3的8个技巧分享
  • Python中实现json字符串和dict类型的互转
  • 使用setup.py安装python包和卸载python包的方法
  • python异常信息堆栈输出到日志文件
  • 不小心把linux自带的python卸载了,导致安装一个依赖原python的软件不能安装,请问该怎么办?
  • python下用os.execl执行centos下的系统时间同步命令ntpdate
  • Python开发者社区整站源码 Pythoner
  • Python namedtuple对象json序列化/反序列化及对象恢复
  • python读取csv文件示例(python操作csv)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3