package com.test1;
public class Chazhao {
public static void main(String args[])
{
int arr[]={2,5,7,12,25};
BinaryFind br=new BinaryFind();
br.find( 0,arr.length-1,12, arr);
}
public static void main(String args[])
{
int arr[]={2,5,7,12,25};
BinaryFind br=new BinaryFind();
br.find( 0,arr.length-1,12, arr);
}
}
class BinaryFind
{
public void find(int leftIndex,int rightIndex,
int val,int arr[])
{
int midIndex=(rightIndex+leftIndex)/2;
int midVal=arr[midIndex];
if(rightIndex>=leftIndex)
{
if(midVal>val)
{
find(leftIndex,midIndex-1,val,arr);
}else if(midVal<val)
{
find(midIndex+1,rightIndex,val,arr);
}
else if(midVal==val)
{
System.out.println("找到下标"+midIndex);
}
}}
}
class BinaryFind
{
public void find(int leftIndex,int rightIndex,
int val,int arr[])
{
int midIndex=(rightIndex+leftIndex)/2;
int midVal=arr[midIndex];
if(rightIndex>=leftIndex)
{
if(midVal>val)
{
find(leftIndex,midIndex-1,val,arr);
}else if(midVal<val)
{
find(midIndex+1,rightIndex,val,arr);
}
else if(midVal==val)
{
System.out.println("找到下标"+midIndex);
}
}}
}