Code
public int BinarySearch(int[] list,int key,int low,int hight)
{
low = 0;
hight = list.Length - 1;
int mid = (low + hight) / 2;
if (low > hight)
{ return -1; }
else
{
if (key == list[mid])
return mid;
else if (key < list[mid])
{
return BinarySearch(list,key,low,mid-1);
}
else
{
return BinarySearch(list, key, mid + 1, hight);
}
}
}
}
public int BinarySearch(int[] list,int key,int low,int hight)
{
low = 0;
hight = list.Length - 1;
int mid = (low + hight) / 2;
if (low > hight)
{ return -1; }
else
{
if (key == list[mid])
return mid;
else if (key < list[mid])
{
return BinarySearch(list,key,low,mid-1);
}
else
{
return BinarySearch(list, key, mid + 1, hight);
}
}
}
}