Python实现二分查找算法实例


Posted in Python onMay 26, 2015

本文实例讲述了Python实现二分查找算法的方法。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python
import sys 
def search2(a,m):
  low = 0 
  high = len(a) - 1 
  while(low <= high):
    mid = (low + high)/2
    midval = a[mid]
    if midval < m:
      low = mid + 1 
    elif midval > m:
      high = mid - 1 
    else:
      print mid 
      return mid 
  print -1
  return -1
if __name__ == "__main__":
  a = [int(i) for i in list(sys.argv[1])]
  m = int(sys.argv[2])
  search2(a,m)

运行:

administrator@ubuntu:~/Python$ python test_search2.py 123456789 4
3

注:

1.'__':由于python的类成员都是公有、公开的被存取public,缺少像正统面向对象语言的私有private属性。

于是就用__来将就一下,模拟私有属性。这些__属性往往是内部使用,通常情况下不用改写。也不用读取。

加上2个下划线的目的,一是不和普通公有属性重名冲突,二是不让对象的使用者(非开发者)随意使用。

2.__name__ == "__main__"表示程序脚本是直接被执行的.
如果不等于表示脚本是被其他程序用import引入的.则其__name__属性被设为模块名

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

Python 相关文章推荐
Python 中pandas.read_excel详细介绍
Jun 23 Python
用python 批量更改图像尺寸到统一大小的方法
Mar 31 Python
使用pandas read_table读取csv文件的方法
Jul 04 Python
用pycharm开发django项目示例代码
Oct 24 Python
python微信公众号之关注公众号自动回复
Oct 25 Python
python 缺失值处理的方法(Imputation)
Jul 02 Python
python3 pillow模块实现简单验证码
Oct 31 Python
python随机生成库faker库api实例详解
Nov 28 Python
Python绘图实现显示中文
Dec 04 Python
对python中各个response的使用说明
Mar 28 Python
Python 求向量的余弦值操作
Mar 04 Python
利用Python实现翻译HTML中的文本字符串
Jun 21 Python
Django发送html邮件的方法
May 26 #Python
Python使用xlrd模块操作Excel数据导入的方法
May 26 #Python
django实现分页的方法
May 26 #Python
Django imgareaselect手动剪切头像实现方法
May 26 #Python
Django实现图片文字同时提交的方法
May 26 #Python
Python实现的简单算术游戏实例
May 26 #Python
Django中使用group_by的方法
May 26 #Python
You might like
如何使用PHP中的字符串函数
2006/11/24 PHP
php中利用explode函数分割字符串到数组
2014/02/08 PHP
ThinkPHP控制器详解
2015/07/27 PHP
一个完整的php文件上传类实例讲解
2015/10/27 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
PHP ElasticSearch做搜索实例讲解
2020/02/05 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
jQuery EasyUI中的日期控件DateBox修改方法
2016/11/09 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
angularJS自定义directive之带参方法传递详解
2018/10/09 Javascript
深入理解Puppeteer的入门教程和实践
2019/03/05 Javascript
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
前端插件之Bootstrap Dual Listbox使用教程
2019/07/23 Javascript
vue实现简单加法计算器
2020/10/22 Javascript
使用Python对IP进行转换的一些操作技巧小结
2015/11/09 Python
python脚本监控docker容器
2016/04/27 Python
Python语言描述机器学习之Logistic回归算法
2017/12/21 Python
名片管理系统python版
2018/01/11 Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
2019/01/05 Python
详解python读取image
2019/04/03 Python
torch 中各种图像格式转换的实现方法
2019/12/26 Python
一篇文章搞懂python的转义字符及用法
2020/09/03 Python
关于python中导入文件到list的问题
2020/10/31 Python
python模块内置属性概念及实例
2021/02/18 Python
英国网络托管和域名领导者:Web Hosting UK
2017/10/15 全球购物
Trip.com澳大利亚:在线旅行社
2019/12/01 全球购物
JENNIFER BEHR官网:各种耳环和发饰
2020/06/07 全球购物
澳大利亚厨房和家用电器购物网站:Bing Lee
2021/01/11 全球购物
应届大学毕业生找工作的求职信范文
2013/11/29 职场文书
2013年军训通讯稿
2014/02/05 职场文书
消防工作实施方案
2014/06/09 职场文书
爱耳日宣传活动总结
2014/07/05 职场文书
2015学校师德师风工作总结
2015/04/22 职场文书
2015年中学校长工作总结
2015/05/19 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书