zoukankan      html  css  js  c++  java
  • 递归

    递归
    概述

    递归:指在当前方法内调用自己的这种现象。

    递归的分类:
    递归分为两种,直接递归和间接递归。
    直接递归称为方法自身调用自己。
    间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。

    注意事项:
    递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。
    在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。
    构造方法,禁止递归

    递归的使用前提
    当调用方法的时候,方法的主体不变,每次调用方法的参数不同,可以使用递归
    计算1~n的和
    public static void main(String[] args) {
    //计算1~num的和,使用递归完成
    int num = 5;
    // 调用求和的方法
    int sum = getSum(num);
    // 输出结果
    System.out.println(sum);

    }
    /*
    通过递归算法实现.
    参数列表:int
    返回值类型: int
    /
    public static int getSum(int num) {
    /

    num为1时,方法返回1,
    相当于是方法的出口,num总有是1的情况
    /
    if(num == 1){
    return 1;
    }
    /

    num不为1时,方法返回 num +(num-1)的累和
    递归调用getSum方法
    */
    return num + getSum(num-1);
    }

  • 相关阅读:
    day 46
    day 45 JavaScript 下 函数
    day 42 css 样式
    44 JavaScript
    41 前端
    40 协程 i/0多路复用
    39 线程池 同一进程间的队列
    38 线程 锁 事件 信号量 利用线程实现socket 定时器
    37 生产者消费者模型 管道 进程间的数据共享 进程池
    演示使用string对象
  • 原文地址:https://www.cnblogs.com/zhu998/p/13933203.html
Copyright © 2011-2022 走看看