📅  最后修改于: 2023-12-03 14:52:41.696000             🧑  作者: Mango
在C#中,Array.BinarySearch()
方法可以用来在已排序的数组中搜索指定元素的位置。该方法使用二分查找算法,它是一种高效的算法,可以快速地找到数据。
Array.BinarySearch()
方法需要以下参数:
array
:要搜索的已排序数组。value
:要查找的对象。comparer
:可选参数,用于定义搜索排序和比较规则的 IComparer
对象。如果未指定,则使用默认的比较规则。该方法返回要查找的对象的位置。如果要查找的对象未找到,则返回一个负数,该负数是大于要查找的对象的最后一个元素的索引的负数减一。
以下是使用Array.BinarySearch()
方法的代码示例:
int[] numbers = { 1, 3, 5, 7, 9 };
int index = Array.BinarySearch(numbers, 7);
if (index >= 0)
{
Console.WriteLine("The number 7 is at index " + index);
}
else
{
Console.WriteLine("The number 7 is not in the array.");
}
以上代码将输出“The number 7 is at index 3”。
在使用Array.BinarySearch()
方法时,需要注意以下事项:
IComparer
接口,该接口定义了两个对象之间的比较方法。通过使用Array.BinarySearch()
方法,可以快速地在已排序的数组中查找指定元素的位置。在使用该方法时,需要注意数组的顺序和比较器的类型。