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正则匹配查询港澳通行证办理进度示例分享
Dec 27 Python
深入Python函数编程的一些特性
Apr 13 Python
python编写爬虫小程序
May 14 Python
在Apache服务器上同时运行多个Django程序的方法
Jul 22 Python
从CentOS安装完成到生成词云python的实例
Dec 01 Python
pandas中Timestamp类用法详解
Dec 11 Python
Python实现通讯录功能
Feb 22 Python
python调用百度语音识别api
Aug 30 Python
Django 路由层URLconf的实现
Dec 30 Python
Python3爬虫关于代理池的维护详解
Jul 30 Python
详解基于python的全局与局部序列比对的实现(DNA)
Oct 07 Python
Python基础之变量的相关知识总结
Jun 23 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
Linux中为php配置伪静态
2014/12/17 PHP
PHP中实现获取IP和地理位置类分享
2015/02/10 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
64位windows系统下安装Memcache缓存
2015/12/06 PHP
Prototype 1.5.0_rc1 及 Prototype 1.5.0 Pre0小抄本
2006/09/22 Javascript
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
JS 日期验证正则附asp日期格式化函数
2009/09/11 Javascript
js cookies实现简单统计访问次数
2009/11/24 Javascript
一步步教大家编写酷炫的导航栏js+css实现
2016/03/14 Javascript
javascript的BOM
2016/05/03 Javascript
浅谈js的html元素的父节点,子节点
2016/08/06 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
JS给按钮添加跳转功能类似a标签
2017/05/30 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
安装dbus-python的简要教程
2015/05/05 Python
使用pygame模块编写贪吃蛇的实例讲解
2018/02/05 Python
python数据分析数据标准化及离散化详解
2018/02/26 Python
pygame游戏之旅 创建游戏窗口界面
2018/11/20 Python
python面试题Python2.x和Python3.x的区别
2019/05/28 Python
pytorch 自定义参数不更新方式
2020/01/06 Python
CSS3 border-image详解、应用及jQuery插件
2011/08/29 HTML / CSS
HTML5计时器小例子
2013/10/15 HTML / CSS
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
List, Set, Map是否继承自Collection接口?
2016/05/16 面试题
小学毕业家长寄语
2014/01/19 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
竞聘演讲稿怎么写
2014/08/28 职场文书
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
初中学习计划书范文
2014/09/15 职场文书
2014年化妆品销售工作总结
2014/12/01 职场文书
遗愿清单观后感
2015/06/09 职场文书
nginx部署多前端项目的几种方法
2021/05/25 Servers
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL
Python游戏开发实例之graphics实现AI五子棋
2021/11/01 Python
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle