static void Main(string[] args)
{
int[] array = new int[100000];
for (int i = 0; i < 100000; i++)
{
array[i] = i;
}
Console.WriteLine(BinarySearch(array, 99999));
}
public static int BinarySearch(int[] array, int target)
{
//查找范围
int start = 0;
// 查找范围终点
int end = array.Length - 1;
//查找范围中位数
int mid;
//迭代进行二分查找
while (start <= end)
{
mid = (start + end) / 2;
if (target == array[mid])
return mid;
else if (array[mid] < target)
start = mid + 1;
else
end = mid - 1;
}
return -1;
}