二分查找(递归)
二分查找的作用是将排列数序统一数组中和要找的值找出来,从中间折半判断,判断要找的值在数组的左边或者右边,循环折半的直到找到该元素。
代码如下:
package Mypackage;
import java.util.Scanner;
public class 二分 {
public static int recursionBinarySearch(int[] arr,int key,int low,int high){
if(key < arr[low] || key > arr[high] || low > high){
return -1;
}
int middle = (low + high) / 2;
if(arr[middle] > key){
return recursionBinarySearch(arr, key, low, middle - 1);
}else if(arr[middle] < key){
return recursionBinarySearch(arr, key, middle + 1, high);
}else {
return middle;
}
}
}