- 博客(6)
- 收藏
- 关注
原创 做完全背包问题时什么时候先遍历背包?什么时候先遍历物品?
什么时候先遍历背包?什么时候先遍历物品 先给出结论: 当问题为组合问题时:先遍历物品,再遍历背包 当问题为排列问题时:先遍历背包,再遍历物品 下面结合leetcode上两道题进行讲解 组合问题 518. 零钱兑换 II - 力扣(LeetCode) (leetcode-cn.com) 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证
2022-04-02 23:18:42
947
1
原创 做完全背包题时什么时候先遍历背包?什么时候先遍历物品?
5.什么时候先遍历背包?什么时候先遍历物品 先给出结论: 当问题为组合问题时:先遍历物品,再遍历背包 当问题为排列问题时:先遍历背包,再遍历物品 下面结合leetcode上两道题进行讲解 组合问题 518. 零钱兑换 II - 力扣(LeetCode) (leetcode-cn.com) 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据
2022-04-02 23:15:04
948
3
原创 爬楼梯还有这种实现形式?完全背包解决经典爬楼梯问题
爬楼梯还有这种实现形式?完全背包解决经典爬楼梯问题 问题描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 ~m 个台阶。你有多少种不同的方法可以爬到楼顶呢? 爬楼梯进阶版,假设每次可以爬1~m阶楼梯 完全背包问题 用动态规划五部曲分析一下 1.确定dp数组及其下标含义 dp[j]代表从0~i次任选每次爬的次数,爬到第j个阶梯有dp[j]种方法 2.确定递推公式 dp[j] += dp[j - i]累加求取可能的方法
2022-04-02 23:03:14
625
原创 【动态规划学习笔记】完全背包详解
完全背包 1.理论基础 标准的纯完全背包问题描述为:有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限件,求将哪些物品装入背包里物品价值总和最大。 那么类比于01背包,完全背包与之不同的地方就在于每件物品有无限件 那么跟01背包类似,完全背包也有两种实现形式:二维数组和滚动数组 2.二维数组形式 先用动态规划五部曲对完全背包问题进行推导 1.确定dp数组及其下标含义 dp[i] [j]代表背包容量为j,在下标为0~i
2022-04-02 00:05:33
1328
原创 Struts2框架执行流程以及相关问题总结
1.框架的体系结构 2.框架执行流程描述 Http请求来的时候先初始化action上下文,通过不同的过滤器后进入到核心控制器。再通过Action映射找到要调用的Action,再把请求交给Action对象代理,代理通过xml文件指代要调用的action类,找到后会创建一个actionInvocation实例,实例再进入到Action的过程中会调用配置文件中不同的拦截器,将结构返回给模板引擎,模板引擎返回渲染的结果,通过拦截器最后生成响应返回给浏览器。 3.相关问题总结 (1)学习和实验编程过程
2022-03-29 16:13:39
1069
原创 【动态规划学习笔记】01背包理论基础
01背包 标准的01背包问题: 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 暴力法:回溯搜索,O(2^n) 使用动态规划 1.二维dp数组 实现步骤: 1.确定dp数组及其下标含义 dp[i] [j] 代表 从0到i任选物品,放进容量为j的背包所得的最大价值 2.确定递推公式 对于当前点有两种情况 (1)放进背包 此时的价格变为dp[i] [j] = d
2022-03-28 23:14:30
708
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅