pta7-1 二分查找java
时间: 2024-12-28 20:23:24 浏览: 6
### PTA 7-1 二分查找 Java 实现
为了实现PTA 7-1中的二分查找功能,下面提供了一个完整的Java方法来执行此操作。该方法接收一个已排序数组以及目标值作为参数,并返回目标值所在的索引;如果没有找到,则返回特定指示符。
```java
public class BinarySearch {
/**
* 执行二分查找算法.
*
* @param array 输入的有序整数数组
* @param target 查找的目标数值
* @return 返回target所在的位置下标, 若不存在则返回 -1
*/
public static int binarySearch(int[] array, int target) {
int low = 0;
int high = array.length - 1;
while (low <= high) {
int mid = (high - low) / 2 + low; // 防止(low+high)/2可能溢出的情况
int guess = array[mid];
if (guess == target) {
return mid;
}
if (guess > target) {
high = mid - 1;
} else {
low = mid + 1;
}
}
return -1; // 表示未找到目标值
}
}
```
上述代码实现了标准的二分查找逻辑[^1]。通过不断缩小搜索范围直到定位到目标元素或确认其不在列表内为止。注意这里假设输入的是升序排列的数据集。
阅读全文