Algorithm 矩阵乘法的动态规划子问题图

Algorithm 矩阵乘法的动态规划子问题图,algorithm,dynamic-programming,Algorithm,Dynamic Programming,我正在读关于科尔曼动态规划的书 相关背景可在以下链接中找到 通常,子问题图提供了执行动态规划的运行时分析的另一种方法。 每个顶点对应一个子问题,子问题的选项是该子问题的关联边。回想一下,在棒切割中,子问题图有n个顶点,每个顶点最多有n条边,从而产生一个 O(n^2)运行时间。对于矩阵链乘法,如果我们绘制子问题图,它将有O(n^2)个顶点,每个顶点的阶数最多为n-1,总共有O(n^3)个顶点和边 我正在寻找简单示例n=4的矩阵链乘法子问题图 谢谢你的时间和帮助我不确定我是否理解你的问题,但你在找

我正在读关于科尔曼动态规划的书

相关背景可在以下链接中找到

通常,子问题图提供了执行动态规划的运行时分析的另一种方法。 每个顶点对应一个子问题,子问题的选项是该子问题的关联边。回想一下,在棒切割中,子问题图有n个顶点,每个顶点最多有n条边,从而产生一个 O(n^2)运行时间。对于矩阵链乘法,如果我们绘制子问题图,它将有O(n^2)个顶点,每个顶点的阶数最多为n-1,总共有O(n^3)个顶点和边

我正在寻找简单示例n=4的矩阵链乘法子问题图


谢谢你的时间和帮助

我不确定我是否理解你的问题,但你在找这样的东西吗

我使用以下简单的Python脚本创建了它:

n=4
打印“有向图{”
对于范围(n)中的i:
对于范围(i,n)内的j:
打印'p{}{}[label=“M[{},{}]”;'。格式(i,j,i+1,j+1)
对于范围(n)中的i:
对于范围(n)内的j:
对于范围(i,j)内的k:
打印'p{}{}->p{}{}'。格式(i,j,i,k)
打印'p{}{}->p{}{}'。格式(i,j,k+1,j)
打印“}”
按如下方式运行(需要安装graphviz和imagemagick):


你能举个具体问题的例子吗?
python test.py | dot -Tpng | display