文实例讲述了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快速查找算法应用实例相关推荐

  1. C++Rabin Karp算法字符串快速查找(附完整源码)

    C++Rabin Karp算法字符串快速查找 C++Rabin Karp算法字符串快速查找完整源码(定义,实现,main函数测试) C++Rabin Karp算法字符串快速查找完整源码(定义,实现,m ...

  2. 算法笔记(3)—— 快速 I/O 算法:快速输入算法、快速输出算法

    I/O(英语:Input/Output),即输入/输出,通常指数据在内部存储器和外部存储器或其他周边设备之间的输入和输出,在算法竞赛里面一般指的就是控制台(那个黑窗口)里面的输入与输出,平时我们或许并 ...

  3. python导入csv数据例子-使用python读取csv文件快速插入数据库的实例

    如下所示: # -*- coding:utf-8 -*- # auth:ckf # date:20170703 import pandas as pd import cStringIO import ...

  4. 散列表查找失败平均查找长度_Python数据结构与算法56:排序与查找:冲突解决方案...

    注:本文如涉及到代码,均经过Python 3.7实际运行检验,保证其严谨性. 本文阅读时间约为6分钟. 前面说过,如果两个数据项被散列映射到同一个槽,需要一个系统化的方法在散列表中保存第二个数据项,这 ...

  5. python实现ks算法_Python实现Dijkstra算法

    Dijkstra算法 迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法.是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要 ...

  6. python 傅里叶变换_理解快速傅里叶变换算法

    翻译自原文:https://jakevdp.github.io/blog/2013/08/28/understanding-the-fft/ ​ 快速傅里叶变换(FFT)是信号处理和数据分析中最重要的 ...

  7. Python在计算机里快速查找文件

    python中可以使用 glob 模块实现快速查找文件.在日常工作中,有时会忘记某个文件在电脑的哪个文件夹中,而使用windows自带的搜索功能又过于缓慢,而python中的glob模块可以实现快速查 ...

  8. python实现排列组合公式算法_Python实现卡尔曼滤波算法之贝叶斯滤波

    Python实现卡尔曼滤波算法之贝叶斯滤波 作者:yangjian 卡尔曼滤波器属于贝叶斯滤波器的一种特例,本文主要讲解贝叶斯滤波原理及其算法的python实现. 先来看下贝叶斯公式 贝叶斯公式 :后 ...

  9. python中值滤波算法_Python实现卡尔曼滤波算法之贝叶斯滤波

    Python实现卡尔曼滤波算法之贝叶斯滤波 作者:yangjian 卡尔曼滤波器属于贝叶斯滤波器的一种特例,本文主要讲解贝叶斯滤波原理及其算法的python实现. 先来看下贝叶斯公式 贝叶斯公式 :后 ...

最新文章

  1. attr,abbr,addr三个常见的单词意思
  2. kohana中的路由规则
  3. Linux CENTOS6.5 图形命令互转
  4. linux常用指令总结一~~
  5. 中国体外冲击波碎石机市场趋势报告、技术动态创新及市场预测
  6. java中double类型显示两个小数,比如12.00
  7. Android图片完整性检验,Android安全测试之应用完整性校验检测
  8. mysql数据库如何新建查询_数据库新建查询
  9. 【2020牛客寒假基础算法训练营】第五场总结
  10. uv422转换为yuv420_利用libswscale转换yuyv422到yuv422p或rgb之间的转换, 视频翻转
  11. 怎么不带卡、刷手机进出图书馆---手机NFC
  12. SpringCloud微服务快速入坑
  13. M1 和 M2的走势解读
  14. 《工程学导论》读后感
  15. Android8.0适配问题java.lang.IllegalStateException: Only fullscreen opaque activities can request orie…
  16. 安卓进阶之android系统架构
  17. 计算机大赛指导老师自评怎么写,计算机*学生的简单自我评价
  18. 英语流利说20181211
  19. 机器学习之随机森林RandomForestRegressor
  20. 白鹭科技挂牌新三板 连续三年亏损

热门文章

  1. spring javaee_JavaEE还是Spring? 都不行! 我们呼吁新的竞争者!
  2. 在浏览器中在线尝试无服务器框架项目!
  3. 简而言之SPIFFE
  4. 带有NetBeans 10的Java EE
  5. 单元测试反模式,完整列表
  6. API测试和自动化101:基本指南
  7. JSON-B非对称属性绑定
  8. 从NetBeans运行和调试WildFly Swarm应用程序
  9. java 解析gson_使用Java和Google GSON解析ESPN API
  10. maven使用testng_使用ReportNG更好看的TestNG HTML测试报告– Maven指南