python 二分查找和快速排序实例详解


Posted in Python onOctober 13, 2017

思想简单,细节颇多;本以为很简单的两个小程序,写起来发现bug频出,留此纪念。

#usr/bin/env python
def binary_search(lst,t):
  low=0
  height=len(lst)-1
  quicksort(lst,0,height)
  print lst
  while low<=height: 
    mid = (low+height)/2
    if lst[mid] == t:
      return lst[mid]
    elif lst[mid]>t:
      height=mid-1
    else:
      low=mid+1
  return -1
def quicksort( lst, left , right):
  low=left
  high=right
  key=lst[left]
  if left>=right:
    return 0
  while low<high:
    while low<high and key<lst[high]:
      high=high-1
    lst[low]=lst[high]
    while low<high and key>lst[low]:
      print lst[low]
      low=low+1
    lst[high]=lst[low]
    lst[low]=key
  quicksort( lst , left ,low-1)
  quicksort( lst , low+1 , right)
if __name__=='__main__':
  print binary_search([4,8,1,5,10,2,12,3,6,9],4)

总结

以上所述是小编给大家介绍的python 二分查找和快速排序实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python操作列表的常用方法分享
Feb 13 Python
Python中使用hashlib模块处理算法的教程
Apr 28 Python
python使用htmllib分析网页内容的方法
May 08 Python
Python实现截屏的函数
Jul 25 Python
Python实现模拟登录及表单提交的方法
Jul 25 Python
python实现爬虫统计学校BBS男女比例之数据处理(三)
Dec 31 Python
python简单实例训练(21~30)
Nov 15 Python
Python 用Redis简单实现分布式爬虫的方法
Nov 23 Python
numpy使用fromstring创建矩阵的实例
Jun 15 Python
Pycharm无法显示动态图片的解决方法
Oct 28 Python
使用Python串口实时显示数据并绘图的例子
Dec 26 Python
Python - 10行代码集2000张美女图
May 23 Python
Python实现的排列组合计算操作示例
Oct 13 #Python
python numpy函数中的linspace创建等差数列详解
Oct 13 #Python
Python配置mysql的教程(推荐)
Oct 13 #Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
Oct 13 #Python
python的paramiko模块实现远程控制和传输示例
Oct 13 #Python
基于python(urlparse)模板的使用方法总结
Oct 13 #Python
Python创建对称矩阵的方法示例【基于numpy模块】
Oct 12 #Python
You might like
PHP可逆加密/解密函数分享
2012/09/25 PHP
PHP封装的字符串加密解密函数
2015/12/18 PHP
PHP实现的多文件上传类及用法示例
2016/05/06 PHP
php实现文件上传及头像预览功能
2017/01/15 PHP
PHP程序员简单的开展服务治理架构操作详解(二)
2020/05/14 PHP
&amp;lt;script defer&amp;gt; defer 是什么意思
2009/05/10 Javascript
Jquery Validate 正则表达式实用验证代码大全
2013/08/23 Javascript
JS中判断null、undefined与NaN的方法
2014/03/24 Javascript
jQuery过滤HTML标签并高亮显示关键字的方法
2015/08/07 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
2016/04/05 Javascript
js实现图片上传并预览功能
2018/08/06 Javascript
详解如何用VUE写一个多用模态框组件模版
2018/09/27 Javascript
jquery ui 实现 tab标签功能示例【测试可用】
2019/07/25 jQuery
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
layui问题之渲染数据表格时,仅出现10条数据的解决方法
2019/09/12 Javascript
vue Treeselect下拉树只能选择第N级元素实现代码
2020/08/31 Javascript
vue 验证两次输入的密码是否一致的方法示例
2020/09/29 Javascript
详解Vue中的自定义指令
2020/12/07 Vue.js
Python入门篇之文件
2014/10/20 Python
Flask解决跨域的问题示例代码
2018/02/12 Python
详解python中的异常捕获
2020/12/15 Python
python Matplotlib基础--如何添加文本和标注
2021/01/26 Python
anaconda升级sklearn版本的实现方法
2021/02/22 Python
迪奥官网:Dior.com
2018/12/04 全球购物
什么是smarty? Smarty的优点是什么?
2013/08/11 面试题
工商治理实习生的自我评价
2014/01/15 职场文书
小学数学课题方案
2014/06/15 职场文书
支行行长竞聘报告
2014/11/06 职场文书
2014年煤矿安全工作总结
2014/12/04 职场文书
车队安全员岗位职责
2015/02/15 职场文书
雷锋的故事观后感
2015/06/10 职场文书
公务员爱岗敬业心得体会
2016/01/25 职场文书
python库sklearn常用操作
2021/08/23 Python
Python绘制散乱的点构成的图的方法
2022/04/21 Python