搜索——二分搜索实现及细节
来源:互联网 发布:mac 安卓sdk环境变量 编辑:程序博客网 时间:2024/05/01 18:18
二分搜索,又叫折半搜索算法,其原理较为简单,不再赘述,其时间复杂度为
- 递归和循环两个版本的实现
循环退出的条件
l > h
middle 值的选取(不溢出)
m = l + (h-l)//2
# 递归版本def bisearch(s, e, l, h): if l > h: return False m = l + (h-l)//2 if s[m] == e: return True if s[m] < e: return bisearch(s, e, m+1, h) return bisearch(s, e, l, m-1)
# while 循环版def bisearch(s, e, l, h): while l <= h: m = l + (h-l)//2 if s[m] == e: return True elif s[m] < e: l = m+1 else: h = m-1 return False
References
[1] 折半搜索算法
0 0
- 搜索——二分搜索实现及细节
- 二分搜索算法细节
- 搜索—二分三分搜索—1004
- 二分搜索javascript实现
- 算法——二分搜索
- 二分搜索(折半搜索)的实现
- 二分搜索及测试函数
- 二分搜索的java实现
- 二分搜索树完整实现
- 递归实现的二分搜索
- 二分搜索树的实现
- 二分搜索算法的实现
- java实现二分搜索树
- 二分搜索||c语言实现
- 自己实现的二分搜索
- NOJ1109搜索(二)——二分搜索
- 分治法——二分搜索
- 二分搜索——局部最小值位置
- AndroidManifest合并原理
- netstat获得TCP连接信息的分类统计
- JVM内存配置详解
- Property 'sqlMapClient' is required
- MVC view与control数据传递
- 搜索——二分搜索实现及细节
- 深入分析JavaWeb 20 -- EL表达式和EL函数库
- javabean in structs2
- easyui datagrid checkbox
- 太平洋皇冠证券按照2015年第四季度的收入计算,列出了全球企业云服务收入最多的10家科技公司
- HDU 5366 The mook jong
- Drawable资源
- Java和C的区别
- SharedPreferences跨进程访问