递归写法,效率低
package algorithm;
public class Fibonacci {
public static void main(String[] args) {
System.out.println(fib(1));
}
public static int fib(int num) {
if (num == 0)
return 0;
if (num == 1)
return 1;
return fib(num - 2) + fib(num - 1);
}
}
高效率斐波那契
package algorithm;
public class Fibonacci1 {
public static void main(String[] args) {
System.out.println(Fibonacci1.fib(5));
}
public static int fib(int num) {
int num0 = 1;
int num1 = 0;
int all = 0;
for (int i = 2; i <= num; i++) {
all = num0 + num1;
num1 = num0;
num0 = all;
}
return all;
}
}