斐波那契数列

原创
2015/09/20 17:04
阅读数 48

关于斐波那契数列,在数据结构和算法里面经常会碰到,今天遇到一个比较稍微有点变化的:

要求一个斐波那契数列的元素是前n个元素的和,n由一个给定的数组的长度决定,例如初始化数据为new double[]{1,1,2},则下一个元素是前三的元素的和

public double[] xbonacci(double[] signature, int n){
    double[] result = Arrays.copyOf(signature, n);
    for (int i=signature.length; i<result.length; i++){
        for (int j=i-1; j>=i-signature.length; j--){
            result[i] += result[j];
        }
    }
    return result;
}

个人觉得计算斐波那契数列最好还是用正向迭代,不要用递归,因为计算每一个数时它都要递归计算前面的数。递归有时能巧妙的解决问题,有时却弄巧成拙。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部