public static void Main()
{
int[] nums = new int[] {1,0,1,2,3};
int k = Array.BinarySearch<int>(nums, 0);
Console.WriteLine(k);
}
为什么int []数组中的二进制搜索为0会返回-1而不是0所在的索引?
int k = nums.IndexOf(0);
要求对输入进行排序。从BinarySearch
:
如果使用未排序的数组调用此方法,则即使数组中存在值,返回值也可能不正确,并且可能返回负数。