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

英文网站的首页怎么做网站建设百度推广总结

英文网站的首页怎么做,网站建设百度推广总结,wordpress profile,快闪ppt模板免费下载作者推荐 动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本 本文涉及的基础知识点 C算法#xff1a;滑动窗口总结 字典树 map 离线查询 map map可以分成有序(单调)map和无序(哈希)map。还可分成单键map和多键map#xff08;允许重复的键#xff09;。本文用…作者推荐 动态规划 多源路径 字典树 LeetCode2977:转换字符串的最小成本 本文涉及的基础知识点 C算法滑动窗口总结 字典树 map 离线查询 map map可以分成有序(单调)map和无序(哈希)map。还可分成单键map和多键map允许重复的键。本文用单键无序map。 LeetCode2781:最长合法子字符串的长度 给你一个字符串 word 和一个字符串数组 forbidden 。 如果一个字符串不包含 forbidden 中的任何字符串我们称这个字符串是 合法 的。 请你返回字符串 word 的一个 最长合法子字符串 的长度。 子字符串 指的是一个字符串中一段连续的字符它可以为空。 示例 1 输入word “cbaaaabc”, forbidden [“aaa”,“cb”] 输出4 解释总共有 11 个合法子字符串“c”, “b”, “a”, “ba”, “aa”, “bc”, “baa”, “aab”, “ab”, “abc” 和 “aabc”。最长合法子字符串的长度为 4 。 其他子字符串都要么包含 “aaa” 要么包含 “cb” 。 示例 2 输入word “leetcode”, forbidden [“de”,“le”,“e”] 输出4 解释总共有 11 个合法子字符串“l” “t” “c” “o” “d” “tc” “co” “od” “tco” “cod” 和 “tcod” 。最长合法子字符串的长度为 4 。 所有其他子字符串都至少包含 “de” “le” 和 “e” 之一。 参数范围 1 word.length 105 word 只包含小写英文字母。 1 forbidden.length 105 1 forbidden[i].length 10 forbidden[i] 只包含小写英文字母。 滑动窗口离线查询map 时间复杂度(nmmnlognn)。m max(forbidden[i].length)为10 第一步如果s[left,right]等于 forbidden中任何一个字符串记录在vLeftRight中。本问题等效与不能包括任意[left,right]的最长子串。 第二步排序vLeftRight。 第三步从大到小枚举合法子串的左边界i计算最大右边界j。 如果s[left,right]等于某个禁止串 lefti无论j为何值都不会包括对应的禁止串因为s[left]不在对应的子串中leftij的取值范围为[i,right)不能取值right 否则s[left,right] 就在word[i,j]中。如果多个无法合法的right取最小值。如果没有合法的right取m_c。 离线查询 由于vLeftRight 已经按left排序每次处理i之前先用left i的right更新iMin。 代码 核心代码 class Solution { public:int longestValidSubstring(string word, vectorstring forbidden) {m_c word.length();std::unordered_setstring setHas(forbidden.begin(), forbidden.end());vectorpairint, int vLeftRight;for (int len 1; len 10; len){for (int left 0; left len m_c; left){if (setHas.count(word.substr(left, len))){vLeftRight.emplace_back(left, left len - 1);}}}sort(vLeftRight.begin(), vLeftRight.end());int iRet 0;int iMin m_c;for (int i m_c - 1; i 0; i--){while (vLeftRight.size() (vLeftRight.back().first i)){iMin min(iMin, vLeftRight.back().second);vLeftRight.pop_back();}iRet max(iRet, iMin - i);}return iRet;}int m_c; };字典树 可以利用字典树将第一步的时间复杂度降到O(nm)。 templateclass TData, TData defData,int iTypeNum 26, TData cBegin a class CTrie { public:CTrie() {m_iID s_ID;}int GetLeadCount(){return m_iLeafCount;}templateclass ITint Add(IT begin, IT end){int iLeve 0;CTrie* pNode this;for (; begin ! end; begin){pNode pNode-AddChar(*begin); pNode-m_iLeve iLeve;}if (-1 pNode-m_iLeafID){pNode-m_iLeafID m_iLeafCount;}return pNode-m_iLeafID;}templateclass ITCTrie* Search(IT begin, IT end){if (begin end){return this;}if (. *begin){for (auto ptr : m_vPChilds){if (!ptr){continue;}auto pSearch ptr-Search(begin 1, end);if (pSearch){return pSearch;}}return nullptr;}auto ptr GetChild(*begin);if (nullptr ptr){return nullptr;}return ptr-Search(begin 1, end);}CTrie* AddChar(TData ele){if ((ele cBegin) || (ele cBegin iTypeNum)){return nullptr;}const int index ele - cBegin;auto ptr m_vPChilds[index];if (!ptr){m_vPChilds[index] new CTrie();}return m_vPChilds[index];}CTrie* GetChild(TData ele)const{if ((ele cBegin) || (ele cBegin iTypeNum)){return nullptr;}return m_vPChilds[ele - cBegin];} protected:int m_iID; public:int m_iLeafID-1; protected:int m_iLeve-1;inline static int s_ID 0;int m_iLeafCount 0;CTrie* m_vPChilds[iTypeNum] { nullptr }; };class Solution { public:int longestValidSubstring(string word, vectorstring forbidden) {m_c word.length();CTriechar,a trie;for (const auto s : forbidden){trie.Add(s.begin(), s.end());}vectorpairint, int vLeftRight;for (int left 0; left m_c ; left){CTriechar,a* p trie;for (int len 1; left len m_c; len){p p-GetChild(word[left len - 1]);if (nullptr p){break;}if (p-m_iLeafID 0){vLeftRight.emplace_back(left, left len - 1);}}}sort(vLeftRight.begin(), vLeftRight.end());int iRet 0;int iMin m_c;for (int i m_c - 1; i 0; i--){while (vLeftRight.size() (vLeftRight.back().first i)){iMin min(iMin, vLeftRight.back().second);vLeftRight.pop_back();}iRet max(iRet, iMin - i);}return iRet;}int m_c; };2023年7月版 class Solution { public: int longestValidSubstring(string word, vector forbidden) { m_pHash std::make_shared CHashStr(word,26); std::unordered_set setCode[11]; for (const string s : forbidden) { const int len s.length(); CHashStr hash(s,26); auto llCode hash.GetHashExincludeRight(len); setCode[len].emplace(llCode); } std::mapint, int mEndLen; for (int i 0; i word.size(); i) { for (int len 1; len 10 ; len) { const int end i len; if (end word.size()) { continue; } int llCode m_pHash-GetHashExincludeRight(i, end); if (setCode[len].end() ! setCode[len].find(llCode)) { //目标串不能包括[1,ilen) mEndLen[ilen] len; break; } } } int begin 0; int iMaxLen 0; for (const auto it : mEndLen) { const int iCurLen it.first - begin-1; iMaxLen max(iMaxLen, iCurLen); begin max(begin,it.first - it.second 1); } iMaxLen max(iMaxLen, (int)word.size() - begin); return iMaxLen; } std::shared_ptr CHashStr m_pHash; }; 扩展阅读 视频课程 有效学习明确的目标 及时的反馈 拉伸区难度合适可以先学简单的课程请移步CSDN学院听白银讲师也就是鄙人的讲解。 https://edu.csdn.net/course/detail/38771 如何你想快 速形成战斗了为老板分忧请学习C#入职培训、C入职培训等课程 https://edu.csdn.net/lecturer/6176 相关下载 想高屋建瓴的学习算法请下载《喜缺全书算法册》doc版 https://download.csdn.net/download/he_zhidan/88348653 我想对大家说的话闻缺陷则喜是一个美好的愿望早发现问题早修改问题给老板节约钱。子墨子言之事无终始无务多业。也就是我们常说的专业的人做专业的事。如果程序是一条龙那算法就是他的是睛 测试环境 操作系统win7 开发环境 VS2019 C17 或者 操作系统win10 开发环境 VS2022 C17 如无特殊说明本算法用**C**实现。
http://www.hkea.cn/news/14484011/

相关文章:

  • 网站建设流程html网站搭建报价
  • 成都网站定制建设md5 wordpress
  • 精品课程网站开发关键技术论坛类的网站怎么做
  • 网站定制设计方案公司网站建设电话
  • 扬州网站建设哪个好薇唯艾迪 wordpress
  • 能注册账号的网站模板网站建设教程搭建汽岁湖南岚鸿专注
  • 长沙网站优化页面网站的风格设计
  • 做网站具体收费网站空间1g多少钱一年
  • 网站建设怎么分析市场钓鱼网站图片
  • 做网站外包公司名称最优惠的郑州网站建设
  • 光谷做网站推广费用谷歌搜索入口手机版
  • 广西住建局和城乡建设局网站河北建设厅网站登陆怎么找附件
  • 一流的高密网站建设阿里云搜索引擎入口
  • 怎么看网站文章的收录网站后台程序设计常用语言 技术的分析比较
  • dede网站搬家code snippet wordpress
  • wordpress经典主题seo技术培训沈阳
  • 上海高端点网站建设制作公司有哪些?|网站建设用jsp做网站
  • 海南做网站的kali linux wordpress
  • 哪些公司需要做网站青州网站
  • 西北电力建设第一工程公司网站网络广告投放平台
  • 深圳营销型网站建设公司选择哪家好杭州做产地证去哪个网站
  • 做电影网站如何推广在线购物网站怎么做
  • tuzicms做企业手机网站如何广东网页空间租赁
  • 有个网站可以学做ppt怎样修改wordpress模板
  • 网站动态和静态的区别做公司网站需要多长时间
  • 做网站用到的单词tk域名网站多少
  • 做展览的网站网络运营外包托管
  • 江宁区建设工程质量监督站网站项目名称
  • 网站导航网站建设多少钱公司网站制作网络公司
  • 卖建材的网站wordpress rt视频教程