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

高端网站建设制作官网招聘平台

高端网站建设制作,官网招聘平台,cent7.4安装wordpress,做期货关注什么网站139. 单词拆分(中等) 思路 首先将大问题分解成小问题: 前 i 个字符的子串,能否分解成单词;剩余子串,是否为单个单词; 动态规划的四个步骤: 确定 dp 数组以及下标的含义 dp[i] 表示 s…

139. 单词拆分(中等)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 思路

    • 首先将大问题分解成小问题:
      • 前 i 个字符的子串,能否分解成单词;
      • 剩余子串,是否为单个单词;
    • 动态规划的四个步骤:
      1. 确定 dp 数组以及下标的含义

        dp[i] 表示 s 的前 i 位是否可以用 wordDict 中的单词表示。

      2. 确定递推公式

        如果 dp[j] == true,且 [j, i] 这个区间的子串出现在字典里,那么 dp[i] 一定是true。

        所以可以确定递推公式:if([j,i] 这个区间的子串出现在字典里 && dp[j] == true) dp[i] = true;

      3. dp 数组初始化

        从递归公式中可以看出, dp[i] 的状态依靠 dp[j] 是否为 true,那么 dp[0] 就是递归的根基,令 dp[0] = true ,因为空字符串一定可以被表示;

      4. 确定遍历顺序

        题目中说是拆分为一个或多个在字典中出现的单词,所以这是完全背包问题,需要讨论两层 for 循环的前后顺序。 本周小结!(动态规划系列五)

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

        由于本题要求的是是否都出现过,因此对单词集合里的元素是组合还是排序,并不在意,那么本题使用哪一种方法都可以。

        但本题存在特殊性,因为要求的是子串,所以最好是遍历背包放在外层循环,遍历物品放在内层循环。如果相反的话,需要将所有子串预先放在一个容器里,比较麻烦。

  2. 代码

    class Solution {
    public:bool wordBreak(string s, vector<string>& wordDict) {int n = s.size();unordered_set<string> WordSet(wordDict.begin(), wordDict.end());vector<bool> dp(n+1, false);dp[0] = true; // 初始状态for(int i=1; i<=n; ++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[n];}
    };
    
  3. 收获

    • 总感觉之前做过类似的题,不过不是使用动态规划的解法。这道题完全没思路,找了很多题解才明白,最后参考的是代码随想录的解法。
http://www.yayakq.cn/news/258997/

相关文章:

  • 网站搭建策划书电子商务前景怎么样
  • 如何免费创建一个个人网站360搜索引擎
  • 网站 建设需求微信网站收钱吗
  • 制作英文网站东昌府企业做网站推广
  • 网站排名如何上升三星网上商城退款
  • 微网站工程案例展示免费制作网站模板
  • 有什么网站可以做编程题怎么建自己的销售网站
  • 什么官网比较容易做网站昆明医院网站建设
  • 大淘客网站建设app使用网站效果图
  • 合肥网页设计培训班旺道网站优化
  • 网站开发技术介绍企业网站改版项目描述
  • 南桥网站建设外包做一个app多少钱
  • 网站开发价格明细百度企业查公司名录
  • 做pc端网站什么开头宁海做网站
  • 北京360建筑网杭州seo招聘
  • 手机新机价格网站企业管理培训课程感想
  • 在哪些网站可以发布推广信息建筑模板规格一览表
  • 个人网站如何建设dw网页制作下载
  • php网站开发电子书东莞招聘信息
  • 温州市城乡建设厅网站首页WordPress使用两个模板
  • 自助网站建设公司深圳网站关键词排名
  • 网站建设先进个人事迹东光网站建设
  • 企业门户定制网站建设公司西安网站seo推广厂家
  • 哪个网站做签约插画师好wordpress怎么用vue
  • 建设实验室网站的意义河池市住房城乡建设网站
  • 手机网站用什么空间网站建设合同合同期限
  • 广州英铭网站建设温州网站建设wzwmwl
  • 滨江区住房和城乡建设局网站建个外国网站
  • 地方门户网站规划浙江网站建设
  • 免费代加工项目合作搜索引擎优化服务