zoukankan      html  css  js  c++  java
  • 7.23Java之递归练习

    7.23Java之递归练习

    需求

    使用递归计算1 - n之间的和

    实例图

    package PracticeReview.Recursion;

    /*
    使用递归计算1 - n之间的和
    */
    public class RecursionDemoNo2 {
       public static void main(String[] args) {
           int s = sum(3);
           System.out.println(s);
      }

       /*
       定义一个方法,使用递归j计算1-n之间的和
       1+2+3+...+n
       n+(n-1)+(n-2)+...+1
       已知:
       最大值:n
       最小值:1
           使用递归必须明确的条件:
           1、递归的结束条件
               获取到1的时候结束
           2、递归的目的
               获取下一个被加的数字(n-1)
        */
       public static int sum(int n){
           /*获取到1的时候结束*/
           //判断
           if (n==1){
               return 1;
          }

           /*获取下一个被加的数字*/
           return n + sum(n-1);
      }
    }
    方法执行原理分析图

    需求

    使用递归求n得阶乘:
    n! = n * (n-1) * (n-2) * (n-3) * ... * 3 * 2 * 1

    实例图

    package PracticeReview.Recursion;

    /**
    * 需求:
    * n! = n * (n-1) * (n-2) * (n-3) * ... * 3 * 2 * 1
    * 已知:
    * 起始值:n
    * 结束值:1
    * 递归的目的:
    * 获取下一个被乘的数字
    * @since JDK 1.8
    * @date 2021/07/23
    * @author Lucifer
    */
    public class RecursionDemoNo3 {
       public static void main(String[] args) {
           int jc = factorial(5);
           System.out.println(jc);
      }

       /**
        * 阶乘的方法
        * @param i
        * @return
        */
       public static int factorial(int i){
           //判断是否结束
           if (i==1){
               return i;
          }

           //获取下一个书
           return i * factorial(i-1);
      }
       /*
       使用递归明确两点:
       1、递归的结束条件
       2、递归的目的
       调用方法,方法的主题不变,参数改变
        */
    }

     

    It's a lonely road!!!
  • 相关阅读:
    iOS崩溃治理--基础设施篇
    iOS崩溃治理--开篇
    AFNetworking 源码解读
    NSURLSession使用, 后台下载
    iOS10 越狱, openSSH
    iOS 私有API调用
    IOS 中openGL使用(使用基准图快速制作滤镜)
    IOS 中openGL使用教程4(openGL ES 入门篇 | 离屏渲染)
    IOS 中openGL使用教程3(openGL ES 入门篇 | 纹理贴图(texture)使用)
    SSM整合配置文件的主要内容
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/15050244.html
Copyright © 2011-2022 走看看