研磨数据结构与算法-06递归的应用
一,簡單Demo
public class Recursion {
public static void main(String[] args) {
test(100);
}
public static void test(int n) {
if(n == 0) {
return;
}
System.out.println(n);?
test2(n - 1);
}
}
二,三角數字
public class Triangle {
public static int getNumber(int n) {
int total= 0;
while(n > 0) {
total = total + n;
n--;
}
return total;
}
public static int getNumberByRecursion(int n) {
if(n == 1) {
return 1;
} else {
return n + getNumberByRecursion(n - 1);
}
}
}
測試:
public class TestTriangle {
public static void main(String[] args) {
System.out.println(Triangle.getNumber(500));
System.out.println(Triangle.getNumberByRecursion(500));
}
}
三,斐波那契數列
public class Fibonacci {
public static int getNumber(int n) {
if(n == 1) {
return 0;
} else if(n == 2){
return 1;
} else {
return getNumber(n - 1) + getNumber(n - 2);
}
}
}
測試:
public class TestFibonacci {
public static void main(String[] args) {
System.out.println(Fibonacci.getNumber(5));
}
}
轉載于:https://blog.51cto.com/8169085/1696501
總結
以上是生活随笔為你收集整理的研磨数据结构与算法-06递归的应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux加密解密基础、PKI及SSL、
- 下一篇: 高考题(可作为试讲资料)