当前位置: 首页 > news >正文

企业网站建站价格西安百度公司地址介绍

企业网站建站价格,西安百度公司地址介绍,我要做个网站该怎么做,wordpress怎么批量移动分类139.单词拆分 题目链接: 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 求解思路: 单词是物品,字符串s是背包,单词能否组成字符串s,就是问物品能不能把背包装满。 动规五部曲 确定dp数…

139.单词拆分

题目链接:

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

求解思路:

单词是物品,字符串s是背包,单词能否组成字符串s,就是问物品能不能把背包装满。

动规五部曲

  1. 确定dp数组及其下标含义:字符串长度为i,dp[i] 表示可以字符串可以拆分为一个或多个在字典中出现的单词
  2. 确定递推公式:如果确定dp[j] 是true,且[j, i]这个区间的子串出现在字典里,那么dp[i]一定是true。所以递推公式是 if([j, i] 这个区间的子串出现在字典里 && dp[j]是true) 那么 dp[i] = true
  3. dp数组的初始化:dp[0] = true,递推的根基;其他下表都初始化为false
  4. 确定遍历顺序:本题强调顺序,因此是排列问题,所以先遍历背包,再遍历物品;因为是完全背包,所以正序遍历
  5. 举例推导dp:以输入: s = "leetcode", wordDict = ["leet", "code"]为例,dp状态如图

代码:

class Solution {
public:bool wordBreak(string s, vector<string>& wordDict) {unordered_set<string> wordSet(wordDict.begin(), wordDict.end());vector<bool> dp(s.size()+1, false);dp[0] = true;for (int i = 1; i <= s.size(); i++){for (int j = 0; j < i; j++){string word = s.substr(j, i-j);if (wordSet.find(word) != wordSet.end() && dp[j]){dp[i] = true;}}}return dp[s.size()];}
};

背包总结

背包递推公式

问能否能装满背包(或者最多装多少):dp[j] = max(dp[j], dp[j - nums[i]] + nums[i]); ,对应题目如下:

  • 动态规划:416.分割等和子集(opens new window)
  • 动态规划:1049.最后一块石头的重量 II(opens new window)

问装满背包有几种方法:dp[j] += dp[j - nums[i]] ,对应题目如下:

  • 动态规划:494.目标和(opens new window)
  • 动态规划:518. 零钱兑换 II(opens new window)
  • 动态规划:377.组合总和Ⅳ(opens new window)
  • 动态规划:70. 爬楼梯进阶版(完全背包)(opens new window)

问背包装满最大价值:dp[j] = max(dp[j], dp[j - weight[i]] + value[i]); ,对应题目如下:

  • 动态规划:474.一和零(opens new window)

问装满背包所有物品的最小个数:dp[j] = min(dp[j - coins[i]] + 1, dp[j]); ,对应题目如下:

  • 动态规划:322.零钱兑换(opens new window)
  • 动态规划:279.完全平方数

遍历顺序

01背包

二维dp数组01背包先遍历物品还是先遍历背包都是可以的,且第二层for循环是从小到大遍历。

一维dp数组01背包只能先遍历物品再遍历背包容量,且第二层for循环是从大到小遍历。

完全背包

纯完全背包的一维dp数组实现,先遍历物品还是先遍历背包都是可以的,且第二层for循环是从小到大遍历。

如果求组合数就是外层for循环遍历物品,内层for遍历背包

如果求排列数就是外层for遍历背包,内层for循环遍历物品

相关题目如下:

求组合数

  • 动态规划:518.零钱兑换II(opens new window)

求排列数

  • 动态规划:377. 组合总和 Ⅳ (opens new window)
  • 动态规划:70. 爬楼梯进阶版(完全背包)(opens new window)

如果求最小数,那么两层for循环的先后顺序就无所谓了,相关题目如下:

求最小数

  • 动态规划:322. 零钱兑换 (opens new window)
  • 动态规划:279.完全平方数(opens new window)
http://www.mmbaike.com/news/38620.html

相关文章:

  • 求和萝莉做的网站seo优化工具
  • 自建站和独立站一样吗广东深圳疫情最新消息今天
  • 最好的购物网站微信怎么做推广
  • 做响应式网站制作百度网盘app免费下载安装老版本
  • 聚家网装修平台seo包年优化费用
  • 中国工商网注册官网aso搜索排名优化
  • 如何办理公司注册登记青岛关键词优化报价
  • wordpress文章生成海报插件seo网站内部优化
  • 七牛搭建网站百度移动排名优化软件
  • 网站界面设计如何实现功能美与形式美的统一?seo分析师
  • 长春网站制作哪里好重庆seo薪酬水平
  • wordpress title 自定义网站优化seo怎么做
  • 六安做网站公司图片优化软件
  • 佛山做网站企业推广软文是什么意思
  • 中英文双版网站怎么做如何做好网络营销
  • 罗湖商城网站设计电话新东方一对一辅导价格
  • 学生网站模板电商seo引流
  • 网站建设顺利交付百度快照和广告的区别
  • 东莞企业营销型网站培训网站搭建
  • 响应式网站建设信息百度一下搜索网页
  • 泉州网站建设报价关键词有几种类型
  • 做网站JSP代码培训机构
  • 做旅游网站的需求分析报告谷歌浏览器下载手机版中文
  • 网站建设与推广工资网站优化有哪些技巧
  • 通州青岛网站建设seo网站推广方法
  • 重庆网页制作设计seo助力网站转化率提升
  • 叙述网站建设的流程建站系统软件有哪些
  • php企业网站模板免费下载seo系统源码
  • 网站源码上传教程代刷网站推广免费
  • 网站每年多少钱关键词优化案例