矩阵连乘问题
题目:对于给定的相继n个矩阵{A1,A2,```,An}(矩阵Ai的维数为pi-1*pi,i=1,2,```,n),如何确定计算矩阵连乘积A1A2,```An的计算次序(完全加括号方式),使得依次次序计算矩阵连乘需要的数乘次数最少。
状态转移方程
物理含义 m[i][j]表示计算矩阵A[i:j]所需的最小数乘次数
最长公共子序列
题目:给定两个序列X和Y,当另一个序列Z既是X的子序列又是Y的子序列,称Z是序列X和Y的公共子序列。
状态转移方程
物理含义:m[i][j]记录序列X前i位和序列Y前j位的最长公共子序列的长度。
最大子段和问题
题目:给定由n个整数(可能是负整数)组成的序列a1,a2,```,an,求该序列形如的字段和的最大值。
状态转移方程 :
dp[j]表示前j个数中最大的连续字段和
凸多边形最优三角剖分
题目:给定凸多边形P={v0,v1,```,vn-1},以及定义在凸多边形的边和弦组成的三角形上的权函数w,要求确定该凸多边形的三角剖分,使得该三角剖分所对应的权,即三角剖分中诸三角形上权之和是最小。
状态转移方程:
物理含义:
m[i][j]为凸子多边形(i-1—j)的最优三角剖分对应的最优值
多边形游戏
题目:对于给定的多边形,计算最高得分。游戏的得分就是所剩定点上的整数值
递归求解:
(1) 当op[i+s]=’+’时
m[i,j,0]=a+c ;m[i,j,1]=b+d
(2) 当op[i+s]=’*’时
m[i,j,0]=min{ac,ad,bc,bd}
m[i,j,1]=max{ac,ad,bc,bd}
0-1背包问题
题目:给定n种物品和一背包。物品i的重量是wi,其价值vi,背包的容量为c,问应如何选择装入背宝中的物品,使得装入背宝中物品的总价值最大
状态转移方程:
物理意义:dp[i][j]表示前i个物品容量为j时的最大价值
最优二叉搜索树
题目:对于有序集S及其存取概率分布(a0,b1,a1,```,bn,an),在所有表示有序集S的二叉搜索树中找出一棵具有最小平均路长的二叉搜索树。
状态转移方程:
物理意义:
w[i][j]表示从节点i到节点j的概率和
e[i][j]表示节点i到节点j以r为根节点的最优二叉树