循环与递归

在论坛上看到一个问题:

要求在 输入一个整数n,然后使用递归算法在一个JTextArea中输出所有 1到n的路径。
例如n=4,则输出: 
            1-4
            1-2-4 
            1-2-3-4

 我的解决方法

循环式解决代码:

import java.util.Scanner; public class DiGui { public static void main(String[] args) { int x = 1, y; String str =""; Scanner scan = new Scanner(System.in); y = scan.nextInt(); while(x < y){ str += x + "-"; System.out.println(str + y); x++; } } }

 

问题是解决了,不过人家非要递归算法~~

修改一下,递归式解决代码:

import java.util.Scanner; public class DiGui { static String str =""; public static void main(String[] args) { int x = 1, y; // String str =""; Scanner scan = new Scanner(System.in); y = scan.nextInt(); // while(x < y){ // str += x + "-"; // System.out.println(str + y); // x++; // } digui(x, y); } public static int digui(int x, int y){ if(x == y){ return x; }else{ str += x + "-"; System.out.println(str + y); return digui(x + 1, y); } } }

你可能感兴趣的:(算法,String,Class,import)