斐波拉契数列
- getFibonacci(int n) 计算第n位的值
- sumFibonacc(int n) 计算前n位之和
package com.etime;
/**
* @author 清
* 斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……
*/
public class Test07 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Test07 te = new Test07();
int fibonacci = te.sumFibonacc(8);
System.out.println(fibonacci);
}
public int sumFibonacc(int n) {
// 求斐波那契数列前n位和
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += getFibonacci(i);
}
return sum;
}
public int getFibonacci(int n) {
// 获取第几位斐波拉契数列的值 从1开始
int res = 0;
if (n == 1) {
// 第一位
res = 0;
} else if (n == 2) {
// 第二位
res = 1;
} else {
// 其他位
res = getFibonacci(n - 1) + getFibonacci(n - 2);
}
return res;
}
}
p.s. 欢迎指正