Java中的递归思想
来源:互联网 发布:出国旅游信用卡知乎 编辑:程序博客网 时间:2024/05/20 18:53
递归有直接递归和间接递归,一般用于树状结构(递归算法是非常耗内存的)
•直接递归:函数在执行过程中调用本身。
•间接递归:函数在执行过程中调用其它函数再经过这些函数调用本身。
问题如下:第1个人10,第2个比第1个人大2岁,依次递推,请用递归方式计算出第8个人多大?
在代码中,我们可以分别以循环、递归、尾递归思想来实现!!!
package org.nc.demo; public class nineDemo {public static void main(String[] args) {System.out.println("递归结果"+computeAge(8));System.out.println("尾递归结果:"+GetAgeEnd(4,10));System.out.println("循环结果:"+GetAge(8));}//递归 computeAge(7) + 2 >> computeAge(6) + 2 + 2 >> ...public static int computeAge(int n){if(n==1) //边界return 10;return computeAge(n-1) + 2;} //尾递归就是把上一个方法的返回值当作参数传给下一个方法,不用像递归再向上返回 public static int GetAgeEnd(int num,int result) { if (num == 1) return result; return GetAgeEnd(num-1,result+2); }//循环public static int GetAge(int num) { int age = 10; while (num>1) { age += 2; num -= 1; } return age; }}运行结果:
阅读全文
0 0
- Java中的递归思想
- Java中的递归思想
- Java-递归算法思想
- Java递归思想分析
- Java中的核心技术思想
- Java编程算法基础---- 构造递归思想
- Java编程思想13.3-无意识的递归
- leetcode241 java递归写法,重在思想
- Java设计思想之递归继承
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- 递归思想
- Robot Framework 常用的第三方库
- 计算机视觉简介
- docker 安装 巡风--kali下安装
- ES6中用数组方法遍历DOM
- Linux--预定义变量、函数
- Java中的递归思想
- 【选择器小结】正则表达式、XPath选择器、CSS选择器小结和使用场景
- Node child_process的fork,spawn,exec我有话要说
- 如何在 hexo 中支持 Mathjax?
- Android之ndk之用arm-linux-androideabi工具通过地址找到具体哪里崩溃
- 列表操作
- cosh
- 数据结构-图-网的邻接链表构造(1)
- html position与z-index定位学习