int BinarySearch(int key)
{
int left; //left var
int right; //right var
int middle;
left = 0;
right = MAX-1; //MAX is the number of array members
while(left <= right)
{
middle = (left+right)/2;
if(key < Data[middle])
right = middle -1;
else if (key > Data[middle])
left = middle+1;
else if (key == Data[middle])
printf("Find it! Data[%d] /n",middle)
return 1; //1 means succes
}
}
{
int left; //left var
int right; //right var
int middle;
left = 0;
right = MAX-1; //MAX is the number of array members
while(left <= right)
{
middle = (left+right)/2;
if(key < Data[middle])
right = middle -1;
else if (key > Data[middle])
left = middle+1;
else if (key == Data[middle])
printf("Find it! Data[%d] /n",middle)
return 1; //1 means succes
}
}
博客展示了一段C语言代码,实现了二分查找算法。代码中定义了左右边界和中间值,在循环中不断缩小查找范围,若找到目标值则输出位置并返回成功标志。
648

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



