关于二分查找和占位符的一点疑问

jssdcyy 2020-05-18 09:48:07
int main()
{
int i,n=10;
int *count=0;
int result;
SeqList R;
KeyType a[]= {1,3,9,12,32,41,45,62,75,77},x=32;
for (i=0; i<n; i++)
R[i].key=a[i];
result = BinSearch(R,n,x);
if(result>0)
printf("序列中第 %d 个是 %d,查找次数为%d次\n",result, x);
else
printf("木有找到!\n");
return 0;
}
使用的是二分查找,最后一个 占位符明明没有内容,为何最终会显示17?

这样使用计数器为啥出来结果不对?
和下图的代码有什么区别吗?下图代码统计查询次数就是对的。。

麻烦各位帮忙看看,谢谢!
...全文
79 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
5250 2020-05-19
  • 打赏
  • 举报
回复
上面的执行完return 0;
下面的执行完return count;

能一样?

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧