python快速查找算法应用实例


Posted in Python onSeptember 26, 2014

本文实例讲述了Python快速查找算法的应用,分享给大家供大家参考。

具体实现方法如下:

import random
def partition(list_object,start,end):
  random_choice = start
  #random.choice(range(start,end+1))
  #把这里的start改成random()效率会更高些
  x = list_object[random_choice]
  i = start
  j = end
  while True:
    while list_object[i] < x and i < end:
      i += 1
    while list_object[j] > x:
      j -= 1
    if i >= j:
      break
    list_object[i],list_object[j] = list_object[j],list_object[i]
  print list_object
  #list_object[random_choice] = list_object[j]
  #list_object[j] = random_choice
  return j

def quick_sort(list_object,start,end):
  if start < end:
    temp = partition(list_object,start,end)
    quick_sort(list_object,start,temp-1)
    quick_sort(list_object,temp + 1 ,end)
    
a_list = [69,65,90,37,92,6,28,54]
quick_sort(a_list,0,7)
print a_list

程序测试环境为Python2.7.6

输出结果如下:

[54, 65, 28, 37, 6, 69, 92, 90]
[6, 37, 28, 54, 65, 69, 92, 90]
[6, 37, 28, 54, 65, 69, 92, 90]
[6, 28, 37, 54, 65, 69, 92, 90]
[6, 28, 37, 54, 65, 69, 90, 92]
[6, 28, 37, 54, 65, 69, 90, 92]

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python清除字符串里非数字字符的方法
Jul 02 Python
Python Queue模块详细介绍及实例
Dec 27 Python
python开发简易版在线音乐播放器
Mar 03 Python
Python基于回溯法子集树模板解决找零问题示例
Sep 11 Python
Python构建网页爬虫原理分析
Dec 19 Python
python set集合使用方法解析
Nov 05 Python
把vgg-face.mat权重迁移到pytorch模型示例
Dec 27 Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 Python
Python实现转换图片背景颜色代码
Apr 30 Python
python3的pip路径在哪
Jun 23 Python
Windows下pycharm安装第三方库失败(通用解决方案)
Sep 17 Python
Python时间操作之pytz模块使用详解
Jun 14 Python
python求众数问题实例
Sep 26 #Python
python字典序问题实例
Sep 26 #Python
python计算书页码的统计数字问题实例
Sep 26 #Python
python实现从web抓取文档的方法
Sep 26 #Python
python实现udp数据报传输的方法
Sep 26 #Python
python使用Berkeley DB数据库实例
Sep 26 #Python
python实现通过shelve修改对象实例
Sep 26 #Python
You might like
php 文件缓存函数
2011/10/08 PHP
PHP遍历目录并返回统计目录大小
2014/06/09 PHP
php生成随机数的三种方法
2014/09/10 PHP
php上传图片生成缩略图(GD库)
2016/01/06 PHP
Laravel利用gulp如何构建前端资源详解
2018/06/03 PHP
js 编程笔记 无名函数
2011/06/28 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
2012/01/15 Javascript
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
JQuery的$命名冲突详细解析
2013/12/28 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
jquery验证邮箱格式并显示提交按钮
2015/11/07 Javascript
jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
2016/06/02 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
基于angular实现模拟微信小程序swiper组件
2017/06/11 Javascript
详解PHP后期静态绑定分析与应用
2018/03/21 Javascript
vue双向数据绑定知识点总结
2018/04/18 Javascript
小白教程|一小时上手最流行的前端框架vue(推荐)
2019/04/10 Javascript
JS定义函数的几种常用方法小结
2019/05/23 Javascript
js中console在一行内打印字符串和对象的方法
2019/09/10 Javascript
js实现带有动画的返回顶部
2020/08/09 Javascript
vue Cli 环境删除与重装教程 - 版本文档
2020/09/11 Javascript
python获取外网ip地址的方法总结
2015/07/02 Python
Windows下安装Scrapy
2018/10/17 Python
Python3多目标赋值及共享引用注意事项
2019/05/27 Python
Pandas实现dataframe和np.array的相互转换
2019/11/30 Python
如何在keras中添加自己的优化器(如adam等)
2020/06/19 Python
python virtualenv虚拟环境配置与使用教程详解
2020/07/13 Python
python实现sm2和sm4国密(国家商用密码)算法的示例
2020/09/26 Python
html5设计原理(推荐收藏)
2014/05/17 HTML / CSS
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
生物技术研究生自荐信
2013/11/12 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
springboot 自定义配置 解决Boolean属性不生效
2022/03/18 Java/Android