static int[] array={1,2,5,4,7,8,9};
public static void RunSnippet()
{
Console.WriteLine("fff");
int pos =BinSearch(4);
Console.WriteLine(pos);
}
/// <summary>
/// 二分法查询,只适合有序但不连序的队列的查找。
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
public static int BinSearch(int key)
{
int mid=array.Length/2;
if(key==array[mid])
return mid;
int start=0;
int end=array.Length-1;
while(start<=end)
{
mid=(end-start)/2+start;
if(key<array[mid])
{
end=mid-1;
}
else if(key>array[mid])
{
start=mid+1;
}
else
{
return mid;
}
}
return -1;
}
二分法查询,只适合有序但不连序的队列的查找。
最新推荐文章于 2022-08-27 13:59:04 发布
本文介绍了一种在有序数组中使用二分法进行查找的方法,并通过一个具体的示例展示了如何实现这一算法。该方法适用于已排序但不一定连续的数据集。
838

被折叠的 条评论
为什么被折叠?



