算法设计与分析动态规划

Posted seasonbubble

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法设计与分析动态规划相关的知识,希望对你有一定的参考价值。

技术图片技术图片

 

 

 

 


1. 斐波那契数列

技术图片

 

 

 显然,如果我们打算直接递归计算它的每个值,会有重复计算的部分,这个时候我们可以考虑把得到的值存起来,每次调用。

 首先,会自然的想到用数组存下,每次计算下标的前两位的值。

 但是随后我们边发现,其实每次都只需要保留最后两个数的值就能计算出下一个数的值了。这样减少了存储空间的占用。

 

2.计算二项式系数


技术图片

 

 技术图片

 

 技术图片技术图片

 

 3. 最优二叉查找树


 

   3.1 来源

    如今在输入栏上输入关键字,搜索引擎都会按照以前搜索的关键字记录计算频率,得到用户最有可能想要的输入内容。

    如何高效查找带频率的键值,使频率高的值尽可能离根结点近,低的尽量远。

   3.2 核心

    二叉树的左子树的任意结点都小于根节点,右子树的任意结点都大于根节点。

    二叉树搜索树中搜索一个关键字需要访问的结点数等于包含关键字的结点的深度加1。

    所谓最优,是最少的平均比较次数。即

技术图片

   3.3 参考资料

    https://www.cnblogs.com/henuliulei/p/10074216.html(上图源此)

    https://blog.csdn.net/tengweitw/article/details/16972241

    https://blog.csdn.net/liufeng_king/article/details/8694652

   3.4 理解

   由动态规划的思想,当T(i,j)min时,T(left)和T(right)也应该是最小的

   而C(i,j)=查找根结点+查找左子树+查找右子树

   技术图片

 

 技术图片(源自    https://blog.csdn.net/tengweitw/article/details/16972241)

 

以上是关于算法设计与分析动态规划的主要内容,如果未能解决你的问题,请参考以下文章

『嗨威说』算法设计与分析 - 动态规划思想小结(HDU 4283 You Are the One)

动态规划分析总结——怎样设计和实现动态规划算法

算法设计与分析 实验四 动态规划求解流水线问题

算法分析与设计之动态规划

算法设计与分析动态规划

算法设计与分析——划分问题(动态规划)