递归算法
前两天去面试,面试官给了条题目:
1+1+2+3+5+8+13+21+24+n
就是第一个数+第二个数等于第三个数,以此类推
求第三十个数,用递归算法实现
自己想不明白,只好到CSDN来找答案了
[解决办法]
随手写写,可能有语法错误:
public static void test(int num) { if (num <= 2) return 1; else return (test(num-1) + test(num-2));}
[解决办法]
public class Main { public static void main(String[] args) { System.out.println(getN(30)); } // 这叫斐波那契数列 public static int getN(int n) { if (n == 1 || n == 2) return 1; else return getN(n - 1) + getN(n - 2); }}