算法之:二分法
2017-07-26 11:00
127 查看
二分法网上有很多资料了,这里盗用一下算法第四版的代码.
int lo = 0;
int hi = a.length-1;
while(lo<=hi)//为什么是<=而不是<
{
int lo = 0;
int hi = a.length-1;
while(lo<=hi)
{
int mid = lo+(hi-lo)/2;
if (key<a[mid]) hi = mid-1;
else if (key>a[mid]) lo = mid+1;
else return mid;
}
}
这里要注意的是lo<=hi,如果两个数据查找没有等于要出问题。
int lo = 0;
int hi = a.length-1;
while(lo<=hi)//为什么是<=而不是<
{
int lo = 0;
int hi = a.length-1;
while(lo<=hi)
{
int mid = lo+(hi-lo)/2;
if (key<a[mid]) hi = mid-1;
else if (key>a[mid]) lo = mid+1;
else return mid;
}
}
这里要注意的是lo<=hi,如果两个数据查找没有等于要出问题。
相关文章推荐
- 有序符号表(数组实现,JAVA,算法(四),二分法)
- [算法设计与分析]4.1.3迭代法解方程(牛顿迭代法+二分法解方程)
- Android中关于递归和二分法的算法实例代码
- 二分法(算法)
- Python实现二分法算法实例
- 常用算法(冒泡排序、二分法查找)
- 使用c++标准库实现二分法查找基本算法
- [php] 数据结构&算法(PHP描述) 查找&&二分法查找
- Java查找算法之二分法查找
- 【算法王道】二分法和牛顿迭代法求平方根
- iOS 常见算法(二分法、冒泡 、选择)~性能demo
- php算法 二分法
- python的算法:二分法查找(1)
- 【python】图解算法学习第一天-01-(二分法的一个例子)
- 数据结构与算法之二分法插入排序
- 深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
- 算法导论----<二分法改进递归插入算法>及实例
- 算法:二分法查找
- I学霸官方免费教程二十九:Java查找算法之二分法查找
- 二分法 -算法