递归?何为递归

     递归算法是一种直接或间接地调用自身的算法。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解.

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

    for循环实现99乘法表

public class test99 {
    public static void main( String[] args ) {
        for (int i=1;i<=9;i++){
            for (int j=1;j<=i;j++){
                System.out.print(j+" * "+i+ " = "+(i*j) +" ");
            }
        }
    }
}
递归实现99乘法表
public class diguidemo {
    public static void main( String[] args ) {
        digui(9);
    }
    private static void digui( int i ) {
        if (i==1){
            System.out.println("1*1=1");
        }else {
            digui(i-1);
            for (int j=1;j<=1;j++){
                System.out.print(j + "*" + i + "=" + j * i + " ");

            }
        }
    }
}

递归?何为递归_第1张图片

递归求和
public class diguiqiuhe {
    public static void main( String[] args ) {
        int num=5;
        int sum=getSum(num);
        System.out.println(sum);
    }

    private static int getSum( int num ) {
        if (num==1){
            return 1;
        }
        return  num+getSum(num-1);
    }
}

递归?何为递归_第2张图片

你可能感兴趣的:(java)