打开文件 源码可取 可以运行 无需修改
今天给大家分享0-1背包问题的基本解题思路。小白教程,不涉及到动态规划以及状态转移方程等术语,随着后面的更新,这些都会讲到。
问题描述
给你一个可容纳最大重量为 w 的背包和 N 个物品,每个物品有重量和价值两个属性。其中第 i 个物品的重量为 weight[ i ],价值为value[ i ]。现在要你用这个背包装物品,每个物品只能装一次。请问你能装的最大价值是多少?
举例
· 商品数:5 背包容量:20
·
题目一:(求最长相同字母)
给定一组字符串,包含大小写字母,求由同一字母组成的最长子串,字母不区分大小写。
例如:aAbbBBcccCC 最长子串:cccCC
例如:ddddDDDDeeeEEEeeeEEEeee 最长子串:eeeEEEeeeEEEeee
状态定义:dp[i]为以i为结尾的相同字母子串的长度
以字符串 "aAbbBBcc" 为例, 看状态变化.
字符串 a A b b B B c c
状态值 1 2 1 2 3 4 1 2
得出状态转移方程为:
i