编程之战_第五章 百万级斐波那契 首页

字体:      护眼 关灯

上一章 目录 下一章

   第五章 百万级斐波那契 (第1/1页)

    “依上所述”,这字迹依旧在忠实地记录着题目,“若N在800000到1200000之间,作何解?”

    这是一个典型的算法问题,要求高性能。

    斐波那契传统的通项公式,已经无法满足这种需求了,或者说,已经被时代前沿所抛弃了。

    一般的通项公式,面对这个问题,就如同蜗牛一样爬,让人无法忍受。

    需要用到的大整数加法,足以摧毁这种算法脆弱的体系。

    这也恰恰体现了时代的局限性,毕竟斐波那契时代距今也相差近千年了。

    杨成闭着眼睛,开始回忆以前在网上搜索的那一个个例子。

    斐波那契矩阵,两倍项公式渐渐浮现在他脑海中,杨成嘴角咧出一丝笑意。

    既然f(n)的公式不行,那就用f(2n)的公式!

    他思索了片刻,用鹅毛笔蘸了蘸墨水,写下了一行公式:

    f(2n)=f(n-1)f(n) f(n 1)f(n)

    这是一个对数级的算法,可以胜任大数据的挑战。

    具体的算法他没有写,因为他并没有办法来验证程序的正确性,至于做单元测试,那更是想都别想。

    令人惊讶的事很快发生了,这个两倍项公式被一个椭圆的金色线条环绕着,最后旁边也出现了个对勾。

    “叮!”,一声清脆的系统音,“恭喜玩家您连续完成了阶段任务,请休息一刻钟,我们将为您准备该系列最后的一项挑战!”

    “唉”,杨成感觉有些乏味了,这些题目确实比较益智,但总是一个人做,是不是太单调了。

    于是他打开玩家面板,选中了客服按钮。

加入书签 我的书架

上一章 目录 下一章