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类定义的讲解
Nov 01 Python
python中nan与inf转为特定数字方法示例
May 11 Python
Python探索之URL Dispatcher实例详解
Oct 28 Python
机器学习的框架偏向于Python的13个原因
Dec 07 Python
python 进程间数据共享multiProcess.Manger实现解析
Sep 23 Python
Django框架表单操作实例分析
Nov 04 Python
pytorch1.0中torch.nn.Conv2d用法详解
Jan 10 Python
Python数据结构dict常用操作代码实例
Mar 12 Python
Python学习之os模块及用法
Jun 03 Python
Python基于yaml文件配置logging日志过程解析
Jun 23 Python
python线性插值解析
Jul 05 Python
Python爬虫实现selenium处理iframe作用域问题
Jan 27 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
elgg 获取文件图标地址的方法
2010/03/20 PHP
PHP统计目录中文件以及目录中目录大小的方法
2016/01/09 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
php获取flash尺寸详细数据的方法
2016/11/12 PHP
PHP getNamespaces()函数讲解
2019/02/03 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
JS实现浏览器菜单命令
2006/09/05 Javascript
js身份证验证超强脚本
2008/10/26 Javascript
Table冻结表头示例代码
2013/08/20 Javascript
使用JS+plupload直接批量上传图片到又拍云
2014/12/01 Javascript
使用JQuery实现的分页插件分享
2015/11/05 Javascript
微信小程序 网络API发起请求详解
2016/11/09 Javascript
微信小程序本地缓存数据增删改查实例详解
2017/05/24 Javascript
在vue中添加Echarts图表的基本使用教程
2017/11/22 Javascript
世界上最短的数字判断js代码
2019/09/09 Javascript
JS的时间格式化和时间戳转换函数示例详解
2020/07/27 Javascript
[53:38]OG vs LGD 2018国际邀请赛淘汰赛BO3 第三场 8.26
2018/08/30 DOTA
pyqt4教程之widget使用示例分享
2014/03/07 Python
python开发之for循环操作实例详解
2015/11/12 Python
Python实现简单字典树的方法
2016/04/29 Python
python 调用HBase的简单实例
2016/12/18 Python
Python 修改列表中的元素方法
2018/06/26 Python
24个canvas基础知识小结
2014/12/17 HTML / CSS
不可轻视HTML5!App三年内将被html5顶替彻底消失
2015/11/18 HTML / CSS
函授毕业生自我鉴定范文
2014/03/25 职场文书
出国留学经济担保书
2014/04/01 职场文书
幼儿园老师寄语
2014/04/03 职场文书
活动总结怎么写
2014/04/28 职场文书
幼儿园植树节活动总结
2014/07/04 职场文书
社保转移委托书范本
2014/10/08 职场文书
教师师德师风整改措施
2014/10/24 职场文书
个人优缺点总结
2015/02/28 职场文书
企业投资意向书
2015/05/09 职场文书
简单的辞职信模板
2015/05/12 职场文书
工程款催款函
2015/06/24 职场文书
windows server2008 开启端口的实现方法
2022/06/25 Servers