用VB方法求 用递归调用实现二分法查找有序数组中的关键值
二分法不用递归就可以了,非要用递归的话 假设a(i)为从小到大排列的数组,K为所要查找的关键值,L为数组下标的下限,U为上限private function Find(L as integer,U as integer)as integer dim i as integer if U-L=0 then msgbox("所查关键值K不存在!") i=(L+U)/2 if K=a(i) then Find=i exit function elseif K<a(i) then U=i else L=i endif Find=Find(L,U) end function
啥叫关键值?还有 有序数组?
我也听了一头雾水,只听过有序数组和递规调用:是指数组里的数是按规定次序排列的,将一个大工作分为逐渐减小的小工作,递归是一种思想,只不过在程序中,就是依靠函数嵌套这个特性来实现了。
答:#include int main() { int a,b,c,i,he; a=0; b=1; scanf("%d",&c); for(i=1;i<=c;i+...详情>>