算法设计与分析第三章作业

软工2303杨坚铖 2024-11-02 13:06:33

1.请按照如下格式书写动态规划方程:
(1)状态表示:首先,用a[n][n]数组来表示经过每一个格子的价格,m[i][j]表示到每一个格子的最低总价格,则m[i][j]=a[i][j]+min(m[i-1][j],m[i][j-1]),即到达第i行第j列格子最低价和到达正上方和左方格子最低价有关。
(2)状态方程:
m[0][j]=m[0][j-1]+a[0][j];//0<j<n,j从0到n-1
m[i][0]=m[i-1][0]+a[i][0];//0<i<n,i从0到n-1
m[i][j]=a[i][j]+min(m[i-1][j],m[i][j-1])
(3)边界条件:
//0<j<n,j从0到n-1
//0<i<n,i从0到n-1
(4)时间、空间复杂度分析
时间复杂度:由于每次循环都能填一个格子,故为o(n**2)
空间复杂度:同理,o(n**2)
2.感觉对动态规划越来越熟悉了,非常好

...全文
42 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

434

社区成员

发帖
与我相关
我的任务
社区描述
广东外语外贸大学信息科学与技术学院
算法 高校
社区管理员
  • brisksea
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧