binarysearch.java
来自「java编程代码」· Java 代码 · 共 29 行
JAVA
29 行
public class BinarySearch
{
/**
Searches the array a for key. If key is not in the array segment, then -1 is
returned. Otherwise returns an index in the segment such that key == a[index].
Precondition: a[first] <= a[first + 1]<= ... <= a[last]
*/
public static int search(int[] a, int first, int last, int key)
{
int result = 0; //to keep the compiler happy.
if (first > last)
result = -1;
else
{
int mid = (first + last)/2;
if (key == a[mid])
result = mid;
else if (key < a[mid])
result = search(a, first, mid - 1, key);
else if (key > a[mid])
result = search(a, mid + 1, last, key);
}
return result;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?