Java的折半查找程序
2006-11-22 16:16
274 查看
返回值为负则未找到。
public static int binarySearch(long[] a, long key)
{
int low = 0;
int high = a.length-1;
while (low <= high)
{
/** 左移一位等于除以2*/
int mid = (low + high) >> 1;
long midVal = a[mid];
if (midVal < key)
low = mid + 1;
else if (midVal > key)
high = mid - 1;
else
return mid;
}
return -(low + 1);
}
public static int binarySearch(long[] a, long key)
{
int low = 0;
int high = a.length-1;
while (low <= high)
{
/** 左移一位等于除以2*/
int mid = (low + high) >> 1;
long midVal = a[mid];
if (midVal < key)
low = mid + 1;
else if (midVal > key)
high = mid - 1;
else
return mid;
}
return -(low + 1);
}
相关文章推荐
- java数组排序与折半查找
- java 实现折半(二分)查找
- java编写程序查找出在一个字符串中出现次数最多的字母
- java 程序消耗 cpu 100% 查找方法
- JAVA数组排序——二分(折半)查找
- java实现有序数组的折半查找
- Android--查找程序根目录下所有文件/Java IO操作
- 用java实现折半查找
- 查找程序根目录下所有文件-Java i/o与ListActivity
- java 程序内存溢出问题查找
- Java数组之反转、排序、折半查找
- 程序题:java代码查找100-999中的水仙花数字
- java程序占用高CPU问题线程jstack查找
- java数据结构---折半查找
- java应用死循环排查方法或查找程序消耗资源的线程方法
- C语言:折半查找的程序编写
- java 程序消耗 cpu 100% 查找方法
- Android--查找程序根目录下所有文件/Java IO操作
- 用Java实现有序数列的折半查找
- eclipse 设置快捷键 查找下一个 上一个 运行 java 程序