重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下Java递归基础与递归的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联公司:成立于2013年为各行业开拓出企业自己的“网站建设”服务,为1000多家公司企业提供了专业的成都网站设计、成都网站建设、网页设计和网站推广服务, 按需定制由设计师亲自精心设计,设计的效果完全按照客户的要求,并适当的提出合理的建议,拥有的视觉效果,策划师分析客户的同行竞争对手,根据客户的实际情况给出合理的网站构架,制作客户同行业具有领先地位的。本质上,将原来的问题,转化为更小的同一问题
假设我们需要对数组进行求和操作(只是为了更好理解递归程序)
要求如下:求解从索引为0到n-1的数组元素和。
分析:
为了能求解从索引为0到n-1的数组元素和,可以分解为第0个数加上索引从1到n-1的数组元素和,如下:
此时求解索引从1到n-1的数组元素和的规模比求解从索引为0到n-1的数组元素和要少一个数以此类推,如下:
.......
最基本问题:
新建一个package 包名为 Recursion,然后在该包下新建一个SumArray类,相关代码如下
package Recursion; public class SumArray { //调用 public static int sum(int[] arr) { return sum(arr, 0);//0 索引从0开始 } //递归实现数组相加 //l表示索引 private static int sum(int[] arr, int l) { if (l == arr.length) return 0; return arr[l] + sum(arr, l + 1); } //测试 public static void main(String[] args) { int[] nums = {1, 2, 3, 4, 5, 6, 7}; int value = sum(nums); System.out.println(value); } }
结果为:28
对上述代码的分析:
以上是“Java递归基础与递归的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联网站建设公司行业资讯频道!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。