为了加深理解递归,可以多点点该链接:递归.(出口就是右上角x)
接下来,我们思考一个问题:表达式1+2+3....+100=?要怎么写程序来计算呢?...解出递归的要点在于求出n-1,求出了n-1才能求解出n,这是为什么呢?
2.递归的执行过程:
为了搞清楚递归的执行过程,我们配合实例来讲解。在求解阶乘n!...={1,2,5,6,8,9,12,64,78,90};//有序数组
System.out.println(test(arr,0,arr.length-1,8));//传入数组和数组长度,最后一个是要查找的值...high)/2;//求中间的值
if(value==arr[mid]){//如果相等,则找到该值,直接返回
return mid;
}else if(value<arr[mid]){//如果要找的值在中间值得左边...,则下一次递归开始的右指针指向该次中间值-1
return recursion(arr,low,mid-1,value);
}else{////如果要找的值在中间值得右边,则下一次递归开始的左指针指向该次中间值