背包问题
凤梨No.1
这个作者很懒,什么都没留下…
展开
-
Leetcode416.分割等和子集(01背包问题)
416.分割等和子集题目方法一——动态规划(01背包问题)方法二——背包问题(空间复杂度将为O(n))题目给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。注意:每个数组中的元素不会超过 100数组的大小不会超过 200示例 1:输入: [1, 5, 11, 5]输出: true解释: 数组可以分割成 [1, 5, 5] 和 [11].示例 2:输入: [1, 2, 3, 5]输出: false解释: 数组不能分割成两个元素和相等原创 2020-07-18 15:59:38 · 332 阅读 · 1 评论 -
背包问题
背包问题详解0-1背包问题1. 题目2.基本思路3. 优化空间复杂度为O(V)4. 初始化细节5. 还可以继续优化0-1背包问题1. 题目有N件物品和一个容量为V的背包,放入第i 件物品消耗费用为Ci,得到价值为Wi。求解将哪些物品放入背包使价值综合最大2.基本思路01背包问题的特点是每种物品仅有一件,可以选择放或者不放。用动态规划做。定义状态:dp[i][v]表示前i件物品恰好放入容量为V的背包中,可以获得的最大价值,状态转移方程:dp[i][v]= max(dp[i-1][v], dp[i原创 2020-07-18 15:51:43 · 287 阅读 · 0 评论