当前位置: 首页 > news >正文

JAVA核心基础篇-递归

递归的方式:

直接递归:方法自己调用自己

间接递归:A方法调用B方法,B方法调用C方法,C方法调用A方法

注意事项:

1、保证能够停下来,否则回内存溢出

2、次数不能太多,否则也会溢出

3、构造方法禁止递归,会直接编译报错

递归前提

调用方法时,方法主体不变,每次调用的参数不同,可以用递归。

1、什么是递归

A方法调用A方法自己就是递归。

public static void foo() {//...foo();//方法调用自身//...
}

2、递归用于什么场景

递归是一种常见的算法设计方法,特别适用于解决那些可以分解为相似子问题的问题。常见的递归问题包括阶乘计算、斐波那契数列、树和图的遍历等。

递归头:什么时候不调用自身方法,如果没有请求头、将陷入死循环。

递归体:什么时候需要调用自身方法

阶层:

2的阶层:2乘以1

3的阶层:3乘以2乘以1

5的阶层:5乘以4乘以3乘以2乘以1

http://www.dtcms.com/a/347281.html

相关文章:

  • C 语言标准输入输出头文件stdio.h及其常见用法
  • 【读论文】Qwen-Image技术报告解读
  • 云原生高级——K8S总概
  • ArkTS 语言全方位解析:鸿蒙生态开发新选择
  • 双指针:成最多水的容器
  • 使用 eventpp 构建跨 RT-Thread 与 ARM-Linux 的轻量级 Active Object(AO)事件驱动框架
  • AI Agent系列(十三) -智能体架构的真相
  • LoRA 微调
  • 探索 JUC:Java 并发编程的神奇世界
  • 单调栈详解
  • Vue环境组件node.js安装
  • C语言---数据类型
  • Qt中使用MySQL数据库
  • git实战(8)git高阶命令分析【结合使用场景】
  • ADC系统中的信噪比(SNR)
  • 容器安全实践(二):实践篇 - 从 `Dockerfile` 到 Pod 的权限深耕
  • 多模态医学图像融合:解锁顶会顶刊中的医学影像新视界
  • 【GaussDB】使用MySQL客户端连接到GaussDB的M-Compatibility数据库
  • 智慧零售漏扫率↓79%!陌讯多模态融合算法在智能收银与货架管理的实战解析
  • 【Linux】深度学习Linux下的包管理器yum/apt
  • Day22: Python涡轮增压计划:用C扩展榨干最后一丝性能!
  • 微前端架构常见框架
  • 深度学习之PyTorch框架(安装,手写数字识别)
  • pid自适应调节实战设计-基于输出电流的PI参数切换方案
  • deepseek应用技巧-MCP服务操作网页和文档
  • ESP32应用——UDP组播/广播(ESP-IDF框架)
  • AI 辅助编程完全新手指南 - 从零基础到高效协作
  • Java试题-选择题(15)
  • flink常见问题之超出文件描述符限制
  • frp v0.64.0 更新:开源内网穿透工具,最简洁教程