我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

改变折半查找的循环条件

#include
int main()
{
int arr[]={1,2,5,7,9,12,13,45,55,60};
int key=12;
int left=0;
int right=sizeof(arr)/sizeof(arr[0])-1;
while(left<=right) //如果这里改成<,循环该怎么写?
{
int mid=left+(right-left)/2;
if(arr[mid]==key)
{
printf("找到了!");
break;
}
else if(arr[mid]>key)
{
right=mid-1;
}
else
{
left=mid+1;
}

}
if(left>right)
printf("找不到\n");
return 0;

}

近期文章

  • 二维数组求和问题,大神请进
  • Unknown Treasure
  • 表格问题,,,,,,
  • Deploy to the running Hyperledger Fabric 中出现的错误
  • 关于表设计是新增还是更新
  • c#如何通过xml的value值查找到相同值的节点的子节点集合?
  • 小白求大神,这段报错怎么破,按网上好多方法试了一天都不行
  • 使用vs2013编译64位的gdal源码
  • npm install socket.io 问题,安装不成功,报了ERR,不哪出问题了。
  • eclipse 装php插件,安装失败怎么办,求解!谢谢?
  • Spring.Net异常报错,请问如何解决
  • C语言编程中循环语句中的输入输出问题
  • mac地址如何在手机上修改
  • STM32的ADC(DMA)在数码管上无法显示值
  • 小白求大神解答 急急急 在线等
  • nginx做转发时,重定向如何处理
  • Qt中TCP通信是,如何在服务端区分登录,注册,还是文件传输信息?
  • 关于安卓startActivity方法的问题
  • C++怎么将string转成 0x** 这样的unsigned char数组?
  • 求问下面c++算法怎么理解?

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华