动态规划
Mr.Dimple
这个作者很懒,什么都没留下…
展开
-
动态规划——字符串比对问题
字符串比对问题字符串比对问题是利用动态规划求解的经典问题之一。比对问题在实际生活中应用广发,如DNA串的比对。问题描述给定两个字符串,对其相同字符的程度及位置进行比对。求两个字符串的最小错位程度。错位程度(想要对齐两个字符串的代价):将两个字符串相同字符对齐在一起,不齐的地方用空格补充;最终无法对齐的部分被称为错位(mismatch),找出两个字符串的最小mismatch。如:字符串...原创 2019-08-02 16:16:25 · 2672 阅读 · 0 评论 -
动态规划——多段图问题
多段图问题多段图问题是利用动态规划思想解决的经典问题之一,在日常生活中应用广泛。问题描述若存在一个有向加权图G,且G能分出起点和终点以及中间的n的阶段,求起点到终点的最短(长)距离。分析设计通过上图我们可以很容易知道,如果用穷举的方法是没有办法求解的,问题规模实在太大,我们需要使用其他更为高效的算法:动态规划。动态规划解决该问题的主要思想:n个阶段的大问题很难求解,可以将其进行划分成...原创 2019-08-01 11:04:55 · 11944 阅读 · 0 评论 -
动态规划——最短路径问题Floyd算法
Floyd算法Floyd算法是求加权图最短路径的经典算法之一,利用了动态规划的思想解决。算法描述最短路径问题:设有一加权图G,从G中某个顶点出发达到另一个顶点,所经过边的权值之和最小的路径,被称为最短路径。Floyd算法是解决加权图(图可以是有向也可以是无向,可以存在负权)中任意两点之间的最单路径的一种算法。基本思路:通过Floyd算法计算最短路径时,图一般采用二维数组,邻接矩阵的...原创 2019-08-01 19:20:59 · 5574 阅读 · 0 评论 -
动态规划——计算二项式系数问题
计算二项式系数问题二项式是数学中常用的数学式子,动态规划可以很好的解决求解二项式的结果。问题描述已知在n个元素集合中挑选出k(0≤k≤n0\leq k \leq n0≤k≤n)个元素组合的数量,记作C(n,k)C(n, k)C(n,k),或CnkC_n^kCnk。已知二项式系数有如下性质、关系:(a+b)n=Cn0an+Cn1an−1b+...+Cnian−ibi+...+Cnnbn...原创 2019-08-01 21:47:56 · 2150 阅读 · 0 评论 -
动态规划——有向加权图最长路径问题
有向加权图(DAG)最长路径问题有向加权图最长路径问题是图论中一个重要的问题,可以通过动态规划的思想进行解决。问题描述给定一个有向加权无环图G,从G中找出无入度的顶点s,求从s出发到其他顶点的最长路径。下文源代码运行结果参照此图设计分析首先,对于一般的图来说,求最长路径不像求最短路径那样简单,最长路径没有最优子结构。实际上,最长路径属于NP-hard问题。其次,图不能存在环路,如...原创 2019-08-02 10:13:51 · 11873 阅读 · 2 评论 -
动态规划——矩阵连乘问题
矩阵连乘问题矩阵在实际生活中极为重要,但其中的矩阵间乘法的步骤却非常繁琐,当遇到许多个矩阵连乘时,如何减小计算时的代价尤为关键,动态规划可以有效解决该问题。问题描述给定n个矩阵A1,A2……An,且保证Ai能够和Ai+1相乘。由于矩阵乘法满足结合律,可以具有不用的运算顺序,求解使矩阵连乘次数最小的结合律所花费的代价。分析设计已知数学矩阵的定理:若矩阵A的列等于矩阵B的行,则A和B是可...原创 2019-08-13 17:33:10 · 1432 阅读 · 0 评论 -
动态规划——01背包问题
01背包问题背包问题是著名的NP完全问题,在实际生活中有广泛的应用。01背包是背包问题中的一种,也是较简单的一种,利用动态规划的思想可以寻求01背包的解。问题描述设有n个物品,他们具有各自的重量w和价值v;给定一个具有一个容量W的背包,求将物品有选择的放入背包中,使得装入的物品的价值之和最大?01背包:物品是完整个体,只存在放或不放两种状态,不能放入一部分。分析设计动态规划求解问题需要...原创 2019-08-09 15:39:11 · 813 阅读 · 0 评论 -
动态规划——最优二叉检索树问题
最优二叉检索树问题二叉检索树是二叉树当中经典的应用之一,广泛应用于实际生活的检索当中。如何构建一棵二叉树使得检索时的平均代价最低即构建最优二叉检索树,是一个问题。通过动态规划的思想可以对其进行解决。问题描述给定n个结点,构造一棵二叉检索树,使得检索的代价最低,即最优二叉检索树。分析设计二叉检索树的原理、特点、概念及代价在这里不再论述和证明,默认为已知。要想使二叉检索树的检索代价最低,就...原创 2019-08-10 21:36:57 · 1649 阅读 · 1 评论