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

这段代码怎样写成递归的啊

int fun(int a[], int length, int result) {
int first = 0, last = length - 1;
int middle = 0;
while (first <= last) {
middle = (first + last) >> 1;
if (a[middle] == result) {
return middle;
} else if (a[middle] > result) {
last = middle - 1;
} else {
first = middle + 1;
}
}
return -1;
}
这段代码什么意思呢

 :     右移运算符,num >> 1,相当于num除以2

这段代码是在长度为length的数组a[]中寻找数字result所在的位置,如未找到返回-1;

例: a[]={3,6,7,9,12,5}; length=6; rusult=7
return 3

近期文章

  • 应该算是单片机的编程问题
  • Rearrange Them
  • Cactus
  • 求大神告知post请求怎么携带cookie
  • oracle批量分割字段并插入到新表中
  • 一个java作业,请大家赐教
  • Java 程序用eclipse 导出jar 包问题
  • 求问,关于卡了我一晚上的hibernate问题。
  • sass的mixin和include
  • java猜拳游戏如何控制胜率?要求前五局胜率在百分之六十以上
  • vb6.0编程开发平台的控件怎么结合函数mid的功能对输入的内容分段进行匹配的代码怎么实现?
  • 使用VideoView出现问题
  • 自己写的http服务器如何在网站上连接
  • 一道关于数组的题目,请各位帮忙看看。
  • Square in Circle
  • The Balance
  • too many initializers 怎么解决
  • 求解决Error C2039 'CLASS': is not a member of 'STUINFO'
  • Java jdbc server获取数据库地址
  • 如何在窗体中选取3D模型的一部分表面,生成一个新的面片3D模型?

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

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

友情链接:代码精华