用递归实现数组元素相乘
前言:以前,刚学C语言时候递归总是令我头疼!看汉诺塔的算法时,就用手指掐着算,如此也老是记得前边忘了后面。这个程序是一个群友问的,想了好一会才想出来。
源代码:
//使用递归计算数组中各元素的乘积
class ArrayMul...{
public int mul(int arr[],int n)...{ //递归实现方法
if(n<=1)...{
return arr[0];
}
else...{
return mul(arr,n-1)*arr[n-1];
}
}
public static void main(String[] args)...{ //主函数
int[] arr=...{3,1,2,5};
ArrayMul c1=new ArrayMul();
System.out.println("数组元素递归乘积是:"+c1.mul(arr,arr.length));
}
}
后记:递归思想的关键是理清多个元素中n与n-1的关系。
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 子数组最大乘积
- 下一篇: 数组剔除元素后的乘积Python解法

class ArrayMul...{
public int mul(int arr[],int n)...{ //递归实现方法