黑马程序员技术交流社区

标题: 递归方法转换成for循环实现 [打印本页]

作者: chenhaiqian    时间: 2015-11-2 01:42
标题: 递归方法转换成for循环实现
----------------------------------------------------------------
//用递归函数实现

import java.util.Scanner;
class Demo1_DiGui {
    public static void main(String[] args) {
        while (true) {
            System.out.println("请输入一个正整数n,我会为你打印1到n的和");
            Scanner sc = new Scanner(System.in);
            int sum = getSum(sc.nextInt());
            System.out.println("1-n求和的结果是" + sum);
        }
    }

    public static int getSum(int n) {
            if (n==1) {
                return 1;
            }else {
                int temp = getSum(n-1);
                temp = temp + n;
                return temp;
            }
    }   
            
}


------------------------------------------------------------------------------------------------------------
import java.util.Scanner;   //用for循环代替递归函数实现
class Demo1_ForDaitiDigui {
    public static void main(String[] args) {
        while (true) {
            System.out.println("请输入一个正整数n,我会为你打印1到n的和");
            Scanner sc = new Scanner(System.in);
            int sum = getSum(sc.nextInt());
            System.out.println("1-n求和的结果是" + sum);
        }
    }

    public static int getSum(int n) {
        int sum = 0;
        for (int i=1;i<=n ;i++ ) {
            sum = sum + i;
        }                    
        return sum;
    }   
            
}

作者: chenhaiqian    时间: 2015-11-2 01:44
问题来了,用for循环可以简单的实现递归方法的功能,那么递归方法主要应用到哪些场景呢???
作者: 耀阳圣尊    时间: 2015-11-2 10:11
chenhaiqian 发表于 2015-11-2 01:44
问题来了,用for循环可以简单的实现递归方法的功能,那么递归方法主要应用到哪些场景呢??? ...

多级文件夹查找文件啦,删除等,遍历文件树等
作者: chenhaiqian    时间: 2015-11-2 23:57
哦, so ga, 谢谢
作者: 大自然的搬运工    时间: 2015-11-3 02:26
你也就是数字可以用循环实现,还是简单的计算,换个其他的,例如打印文件夹文件,每次传入的参数是上一级获取的结果的这种等都不行。。。。
作者: 宇婷    时间: 2015-11-3 10:00
不太科学,长知识了
作者: chenhaiqian    时间: 2015-11-4 00:06
大自然的搬运工 发表于 2015-11-3 02:26
你也就是数字可以用循环实现,还是简单的计算,换个其他的,例如打印文件夹文件,每次传入的参数是上一级获 ...

哦,明白了
作者: zypt0218    时间: 2015-11-4 00:46
这个还真的不是很清楚用途,我是来看评论的
作者: 人大常务委员    时间: 2015-11-4 00:53
优点没看懂 !回去再补习一下




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2