java代码二分查找的方法及示例分享
下文笔者讲述使用java代码实现二分查找的方法及示例分享,如下所示
二分查找的简介
二分查找:
指每次查找都是从一个数组的中间开始查找
二分查找的前提:
查找的对象必须是有序
二分查找的实现思路
第一步:
确定整个数组的最大下标、最小下标、中间下标
第二步:
将目标值与最大下标所对应的值、最小下标所对应的值、
中间下标所对应的值相比较
第三步:
调整最大下标、最小下标、中间下标
二分查找的示例分享
public static int binarySearch(int[] intArray, int value) {
int max = intArray.length - 1;
int min = 0;
int mid = (max + min) / 2;
while (intArray[mid] != value) {
if (min <= max) {
if (intArray[mid] > value) {
max = mid - 1;
} else if (intArray[mid] < value) {
min = mid + 1;
}
mid = (max + min) / 2;
} else {
System.out.println("未查询到相应数据");
mid = -1;
break;
}
}
return mid;
}
/**
* java265.com 二分查找的示例
*
* @throws IOException
*/
public static void main(String[] args) throws IOException {
int[] intArray = { 2, 5, 8, 12, 16, 23, 38, 56, 72, 91 };
int i = binarySearch(intArray, 8);
System.out.println("第" + (i + 1) + "个元素!");
System.out.println("============");
i = binarySearch(intArray, 72);
System.out.println("第" + (i + 1) + "个元素!");
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


