首页 > 编程语言 > 详细

算法第三章作业

时间:2018-11-05 23:24:55      阅读:207      评论:0      收藏:0      [点我收藏+]

一、你对动态规划算法的理解

  动态规划算法即将待求解的问题分解转换为多个子问题,然后先去求解子问题,然后再对子问题的一步步求解中就能得到原问题的解。

二、分别列出编程题12的递归方程

1)将问题转化为求两个序列的最长公共子序列XY

C[i][j]为序列XiYj的最长公共子序列的长度

                   0                    i = 0,j = 0

C[i][j] =      c[i-1][j-1]+1          i,j>0;xi != yi

                 max{c[i][j-1],c[i-1][j]  i,j > 0;xi!=yi

 

(2)a[i][j]i站和j站之间的最低费用,r[i][j]i站和j站之间的费用

               r[i][j]                    i+1=j

a[i][j] =  min{a[i][k]+a[k][j],r[i][j]}

三、说明结对编程情况

  在弄第一道编程题的时候,由于一直弄不懂怎么才算得出正确的最长子序列,所以从头的想法就是错误的,也导致了pta上一直不过。最后跟同学讨论过之后,才终于清楚了最长子序列的得出方法,也才终于写对了代码。

 

算法第三章作业

原文:https://www.cnblogs.com/LuMinghao/p/9912229.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!