惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
G
Google Developers Blog
WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
爱范儿
爱范儿
Microsoft Security Blog
Microsoft Security Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Blog — PlanetScale
Blog — PlanetScale
T
Tailwind CSS Blog
S
SegmentFault 最新的问题
阮一峰的网络日志
阮一峰的网络日志
博客园 - 三生石上(FineUI控件)
酷 壳 – CoolShell
酷 壳 – CoolShell
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
I
InfoQ
MyScale Blog
MyScale Blog
V
V2EX
B
Blog
罗磊的独立博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 超薄

符号执行虚假控制流去混淆 ios 重启usb ubuntu 搜狗输入法安装 js 反hook js 源码乱码 js和html加上混淆 js 字体加密 jj混淆 webpack 暴力方式扣取 志远js调试相关 并行算法中的异常 事件模式实现通知 扩展属性应用 位运算应用口诀和实例(转自大笨狼) 数据结构实际应用----订单排序(堆排序求前N大) 数据结构Tire 树实际应用----过滤禁词 快速排序算法 字典 DictionaryBase 和 SortedList 模式匹配文本处理 位运算
动态规划
超薄 · 2012-02-11 · via 博客园 - 超薄

动态规划认为是递归的反向技术,递归的效率低下。

斐波那契数列 1,2,3,58,13,21,34

static long recurFib(int n) 

{

if (n < 2)

        return n;

else

        return recurFib(n - 1) + recurFib(n - 2);

}

动态规划版本 

    static long iterFib(int n)

    {

        int[] val = new int[n];

        if ((n == 1) || (n == 2))

            return 1;

        else

        {

            val[1] = 1;

            val[2] = 2;

            for (int i = 3; i <= n - 1; i++)

                val[i] = val[i - 1] + val[i - 2];

        }

        return val[n - 1];

}

static void Main()

{

Timing tObj = new Timing();

    Timing tObj1 = new Timing();

    int num = 35;

    long fibNumber;

    tObj.startTime();

    fibNumber = recurFib(num);

    tObj.stopTime();

    Console.WriteLine("Calculating Fibonacci number: " + num);

    Console.WriteLine(fibNumber + " in: " + tObj.Result().TotalMilliseconds);

    tObj1.startTime();

    fibNumber = iterFib(num);

    tObj1.stopTime();

    Console.WriteLine(fibNumber + " in: " + tObj1.Result().TotalMilliseconds);

}

随着数字增大,效率差距很大。