java-day22
2021/10/26 9:10:16
本文主要是介绍java-day22,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1、递归:自己调用自己
递归结构包括两个部分:
---递归头:什么时候不调用自身方法。如果没有头,会陷入死循环(即限制条件)
---递归体:什么时候调用自身方法。
递归的深度越大,占用的空间内存就会大,实用性也就不会那么好。大计算能少用递归就少用
尝试用下面的代码,会导致stackoverflowerror (栈溢出)
package methodd; public class Demo02 { public static void main(String[] args) { Demo02 test = new Demo02(); test.test(); } public void test(){ test(); } }
报错如下:
2、用递归实现阶乘
package methodd; //阶乘 //比如2! 2的阶乘,即2*1 1! 1的阶乘就是1本身 //3! 3的阶乘 3*2*1 //5! 5的阶乘 5*4*3*2*1 public class Demo03 { public static void main(String[] args) { System.out.println(f(5)); } // 2! 2*f(1) // 3! 3*f(2) 3*2*f(1) public static int f(int n){ if(n==1){ return 1; }else{ return n*f(n-1); } } }
这篇关于java-day22的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22项目:远程温湿度检测系统
- 2024-12-21《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》简介
- 2024-12-21后台管理系统开发教程:新手入门全指南
- 2024-12-21后台开发教程:新手入门及实战指南
- 2024-12-21后台综合解决方案教程:新手入门指南
- 2024-12-21接口模块封装教程:新手必备指南
- 2024-12-21请求动作封装教程:新手必看指南
- 2024-12-21RBAC的权限教程:从入门到实践
- 2024-12-21登录鉴权实战:新手入门教程
- 2024-12-21动态权限实战入门指南