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

长沙网站优化电话WordPress文章相册插件

长沙网站优化电话,WordPress文章相册插件,桂林漓江水位,亿唐微方网站建设一、题目 1、题目描述 给你一个下标从 0 开始的字符串 s 和一个单词字典 dictionary 。你需要将 s 分割成若干个 互不重叠 的子字符串,每个子字符串都在 dictionary 中出现过。s 中可能会有一些 额外的字符 不在任何子字符串中。 请你采取最优策略分割 s &#xff…

一、题目

1、题目描述

给你一个下标从 0 开始的字符串 s 和一个单词字典 dictionary 。你需要将 s 分割成若干个 互不重叠 的子字符串,每个子字符串都在 dictionary 中出现过。s 中可能会有一些 额外的字符 不在任何子字符串中。

请你采取最优策略分割 s ,使剩下的字符 最少 。

2、接口描述

class Solution {
public:int minExtraChar(string s, vector<string>& dictionary) {}
};

3、原题链接

2707. 字符串中的额外字符


二、解题报告

1、思路分析

和上周周赛题目类似,也是分割字符串,我们可以用动态规划将问题划分为子问题

定义状态dp[i]为前i个字符最优划分后的最少额外字符,那么有转移方程:

dp[i] = dp[ i -1],将第i个字符作为额外字符

dp[i] = min(dp[i] , dp[j - 1]),其中第j个字符到第i个字符在字典中

最终返回dp[n]即可

进行状态转移,如果暴力计算子串是否在字典中,显然复杂度过高

如果将字典中字符串存入哈希表,那么每次状态转移为n * 2,因为我们要从(i , i)计算到(1 , i)

这里就涉及到查询字符串优化的常用策略,将目标字符串倒序存入字典树,然后倒序查询可以满足一次遍历完成查询,关于字典树见:Trie树/字典树的原理及实现[C/C++]-CSDN博客

2、复杂度

时间复杂度:O(n^2 + ml) 空间复杂度:O(m l * 26)

3、代码详解

class Solution
{
public:struct Node{bool isword = false;unordered_map<char, Node *> child;} root;void insert(string &s){Node *cur = &root;for (int i = s.size() - 1; i >= 0; i--){if (!cur->child.count(s[i]))cur->child[s[i]] = new Node;cur = cur->child[s[i]];}cur->isword = true;}int minExtraChar(string s, vector<string> &dictionary){root.child.clear();for (auto &x : dictionary)insert(x);int n = s.size();vector<int> dp(n + 1, INT_MAX);dp[0] = 0;for (int i = 1; i <= n; i++){dp[i] = dp[i - 1] + 1;Node *cur = &root;for (int j = i; j >= 1; j--){if (!cur->child.count(s[j - 1]))break;cur = cur->child[s[j - 1]];if (cur->isword)dp[i] = min(dp[i], dp[j - 1]);}}return dp[n];}
};

http://www.yayakq.cn/news/125851/

相关文章:

  • 做效果图网站有哪些怎么运行自己做的网站
  • 网站内如何做内部链接培训机构
  • 手机网站制作推广定制营销网站建设制作
  • 凡科建设的网站如何wordpress 自动升级
  • 做的烂的网站手机ppt制作软件全模板免费
  • 中工信融做网站怎么样cdr做网站流程
  • 网站在线统计代码电工培训学校
  • 顺德大良哪家做网站好上海网站jianshe
  • 京伦网站建设郑州企业建公租房的政策
  • 做网站必看的外国书籍logo在线设计生成器免费下载
  • 湖南餐饮网站建设网页图片加载失败
  • 怎么在网站做营销软文网站群建设规划方案
  • 旅游门户网站系统如何做logo模板下载网站
  • 服装网站建设准备什么是推广型网站
  • 怎么做网站内部搜索功能asp网站开发源码
  • 如何注册一个网站域名软文推广一般发布在哪些平台
  • 网站建设教程自学网国内知名的咨询公司排名
  • 怎么看国外设计网站编程项目实例网站
  • 高端企业网站开发做asp网站需要的实验报告单
  • 苏州seo网站公司软件开发计划文档
  • fms 视频网站建设浙江软装公司
  • 装修论坛网站有哪些跨境电商是不是坑
  • 徐州seo网站推广wordpress眉顶布局
  • 大兴模版网站建设公司公司简介模板免费word
  • 站长工具同大全站做模具在哪个网站找工作
  • 网站开发培训机构给自己的公司做网站怎么做好
  • 临沂哪里做网站中铁建设集团董事长
  • 个人建设网站盈利需要什么材料新手开店适合开什么店
  • 西安域名注册网站建设做旅游网站
  • 企业做国外网站多少钱企业网站建设费用财务处理