一、基本概念 动态规划过程是:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。二、基本思想与策略 基本思想与分治法类似,也是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后...
分类:
其他好文 时间:
2014-07-22 22:44:33
阅读次数:
209
/***** HDOJ_2084_数塔问题 ********//******** written by C_Shit_Hu ************/ ////////////////动态规划DP问题/////////////// /*******************************.....
分类:
其他好文 时间:
2014-07-22 00:10:33
阅读次数:
159
接下来的几道题,都是有关路径问题,这可以说是DP问题的一种典型应用。路径有一个维度的;也有两个维度的。
Eg10:Climbing Stairs
这道题目比较简单,重在分析思路。
Eg11:Minimum Path Sum
分析:略
class Solution {
public:
int minPathSum(v...
分类:
其他好文 时间:
2014-07-21 16:48:55
阅读次数:
191
DP不仅广泛用于各种最优化问题,也常常用于排列组合的个数、概率期望计算等等,因为这些问题往往具有很好的“ 重叠子问题”特性,这些问题往往都起源于排列组合中的组合公式A(n, k) = A(n-1, k) + A(n-1, k-1)
例一:求解划分数
有n个无差别的物品,将他们划分成不超过m组,求划分方法数除以M的余数。
分析:dp[i][j]j的i划分的总数
dp[i][j] = ...
分类:
其他好文 时间:
2014-07-21 15:48:06
阅读次数:
268
本节,我们将对leetcode上有关DP问题的题目做一个汇总和分析。
1.题目来源
Interleaving String
动态规划 二叉树
Unique Binary Search Trees 动态规划
二叉树
Word Break 动态规划
N/A
Word Break II 动态规划
N/A
Palindrome Partitioning 动态规划
N/A
...
分类:
其他好文 时间:
2014-07-21 15:47:05
阅读次数:
232
在第三节中,我们将讨论序列化问题中的动态规划解法。这部分多半分为单序列和双序列等问题
例一:最长上升子序列。
最长上升子序列问题,有一个正整数数列,长度n在1000之内,元素a[i]在10^5之内,求最长递增子序列的长度。
分析一:发现问题的可分性质
如果我们采用穷举法,将有2^n的时间复杂度;这里面有很多是重复的4、3、***类型的子序列,以4开头的递增子序列的长度都是1....
分类:
其他好文 时间:
2014-07-21 15:34:06
阅读次数:
207
本节,我们将对leetcode上有关DP问题的题目做一个汇总和分析。
1.题目来源
Interleaving String
动态规划 二叉树
Unique Binary Search Trees 动态规划
二叉树
Word Break 动态规划
N/A
Word Break II 动态规划
N/A
Palindrome Partitioning 动态规划
N/A
...
分类:
其他好文 时间:
2014-07-21 15:21:05
阅读次数:
189
上一节,我们讨论了01背包问题,说明了*递归与分治法 与 动态规划DP的区别和联系,介绍了缓存的概念*。以下,我们用DC、DP、cache分别表示分治法、动态规划和缓存。本节,我们讨论01背包的另外两种形似——
完全背包和多重背包问题,分析DP问题的另外一些情况。
例一:完全背包问题
同样有n种价值和重量分别为weight[i] and value[i], 背包大小W。限制条...
分类:
其他好文 时间:
2014-07-21 15:18:15
阅读次数:
295
多重集组合数 代码(C)本文地址: http://blog.csdn.net/caroline_wendy题目: 有n种物品, 第i种物品有a个. 不同种类的物品可以互相区分, 但相同种类的无法区分.从这些物品中取出m个, 有多少种取法? 求出数模M的余数.例如: 有n=3种物品, 每种a={1,2,3}个, 取出m=3个, 取法result=6(0+0+3, 0+1+2, 0+2+1, 1+0+...
分类:
其他好文 时间:
2014-07-21 11:38:56
阅读次数:
248
划分数 代码(C)本文地址: http://blog.csdn.net/caroline_wendy题目: 有n个无区别的物品, 将它们划分成不超过m组, 求出划分方法数模M的余数.例如: n=4的m=3个划分, result=4(1,1,2; 1,3; 2,2; 4)使用动态规划(DP)方法, n的m划分a, 如果每个i都有a, {a-1}的集合就是n-m的m划分; a=0时, 就是n的m-1划...
分类:
其他好文 时间:
2014-07-21 11:14:04
阅读次数:
198