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

Java算法之递归算法-如何计算阶乘的值

上一篇学了递归之后,练习一下递归算法。

题目:使用递归算法计算阶乘的值,也就是5!=5*4*3*2*1,直接使用循环是非常简单的,这边练习一下递归算法。

先写一下两个条件

基线条件:等于1的时候返回1

递归条件:x * f(x-1)

下面直接开始写代码

package com.dlh.test.算法;import java.util.Scanner;public class 递归算法之阶乘 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int num = sc.nextInt();int result = fact(num);//调用递归函数System.out.println(num+"!"+"="+result);}private static int fact(int num) {int result = 0;if (num == 1){//基线条件return 1;}else {//递归条件result = num*fact(num-1);//递归调用自己}return result;}
}

http://www.lryc.cn/news/408021.html

相关文章:

  • python爬虫入门小案例
  • 【昇腾AI创新大赛集训营南京站学习笔记】-Ascend算子开发课程
  • 系统架构设计师教程 第4章 信息安全技术基础知识-4.5 密钥管理技术4.6 访问控制及数字签名技术-解读
  • C语言日常练习Day13
  • map、foreach、filter这些方法你还不知道什么时候该用哪个吗?那就看过来
  • 6.3 面向对象技术-设计模式
  • Mac 中安装内网穿透工具ngrok
  • python count返回什么
  • mac清理软件哪个好用免费 MacBook电脑清理软件推荐 怎么清理mac
  • 学生党百元蓝牙耳机哪个性价比高?精选四款超强性价比耳机型号
  • 中文之美,美在辞藻富丽,也美在情感含蓄内敛。
  • FPGA与ASIC:深入解析芯片设计的双子星
  • 深入 Symfony 服务容器:依赖注入的艺术
  • 基于Java+SpringMvc+Vue技术的慈善捐赠平台设计与实现(源码+LW+部署讲解)
  • dsp c6657 SYS/BIOS学习笔记
  • 分布式搜索引擎ES-DSL搜索详解
  • vue zip文件下载请求封装与使用
  • Windows波形音频MMEAPI简介
  • sklearn聚类算法用于图片压缩与图片颜色直方图分类
  • Llama 3.1要来啦?!测试性能战胜GPT-4o
  • C++使用opencv处理图像阴影部分
  • 4.Java Web开发模式(javaBean+servlet+MVC)
  • centos7 mysql 基本测试(6)主从简单测试
  • 信息安全工程师题
  • springcloud rocketmq 新增的消费者组从哪里开始消费
  • Redis-缓存
  • MySQL练习05
  • [C++][STL源码剖析] 详解AVL树的实现
  • Kubernetes存储 - Node本地存储卷
  • Cocos Creator2D游戏开发-(2)Cocos 常见名词