当前位置:首页 » 编程语言 » c语言算法动态规划

c语言算法动态规划

发布时间: 2023-08-21 17:39:07

㈠ 关于c语言动态规划 资源分配问题算法的分析

动态规划算法一般是n步叠代计算局部最优解,每一步叠代需要计算m个子项,那么时间复杂度就是O(m*n)。

如果只保存一步叠代的结果,空间复杂度就是O(m);如果需要保存k步叠代结果,空间复杂度就是O(m*k)。

㈡ 如何用c语言编程实现动态规划

动态规划主要是 状态 & 状态转移方程 如果转移方程写出来了 程序就自然出来啦

对于这题 dp[i][j] 表示 走到格子 (i,j) 时 的总和最大值 val[i][j] 表示格子 (i, j) 的值

那么有 dp[i][j] = max( dp[i-1][j] , dp[i][j-1]) + val[i][j];
当然 边界的时候要特殊考虑一下

for(int i = 1; i <= m ; i++)
for(int j = 1; j <= n; j++)
{
if( i == 1 ) ....;
else if( j == 1 ) ....;
else dp[i][j] = max( dp[i-1][j] , dp[i][j-1]) + val[i][j];
}
最后 dp[m][n] 就是答案啦 ^ ^

热点内容
安卓隐藏的游戏在哪里 发布:2025-03-16 08:05:31 浏览:332
嵌入式服务器搭建 发布:2025-03-16 07:53:28 浏览:683
安卓系统微信登录设备管理在哪里 发布:2025-03-16 07:44:55 浏览:509
青少儿编程品牌 发布:2025-03-16 07:43:24 浏览:632
江西电商存储设备怎么样 发布:2025-03-16 07:32:10 浏览:310
中信电话密码是多少 发布:2025-03-16 07:32:08 浏览:373
怎么样学好编程 发布:2025-03-16 07:31:24 浏览:576
python输出素数 发布:2025-03-16 07:31:21 浏览:431
显卡加速编译 发布:2025-03-16 07:28:53 浏览:688
javadebug 发布:2025-03-16 07:16:21 浏览:297