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

建站之星收费版网络传销是否传销

建站之星收费版,网络传销是否传销,郑州建设网站,优秀设计案例1. 题目链接#xff1a;30. 串联所有单词的子串 2. 题目描述#xff1a; 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如#xff0c;如果 words […1. 题目链接30. 串联所有单词的子串 2. 题目描述 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如如果 words [ab,cd,ef] 那么 abcdef abefcdcdabef cdefabefabcd 和 efcdab 都是串联子串。 acdbef 不是串联子串因为他不是任何 words 排列的连接。 返回所有串联子串在 s 中的开始索引。你可以以 任意顺序 返回答案。 示例 1 输入s barfoothefoobarman, words [foo,bar] 输出[0,9] 解释因为 words.length 2 同时 words[i].length 3连接的子字符串的长度必须为 6。 子串 barfoo 开始位置是 0。它是 words 中以 [bar,foo] 顺序排列的连接。 子串 foobar 开始位置是 9。它是 words 中以 [foo,bar] 顺序排列的连接。 输出顺序无关紧要。返回 [9,0] 也是可以的。示例 2 输入s wordgoodgoodgoodbestword, words [word,good,best,word] 输出[] 解释因为 words.length 4 并且 words[i].length 4所以串联子串的长度必须为 16。 s 中没有子串长度为 16 并且等于 words 的任何顺序排列的连接。 所以我们返回一个空数组。示例 3 输入s barfoofoobarthefoobarman, words [bar,foo,the] 输出[6,9,12] 解释因为 words.length 3 并且 words[i].length 3所以串联子串的长度必须为 9。 子串 foobarthe 开始位置是 6。它是 words 中以 [foo,bar,the] 顺序排列的连接。 子串 barthefoo 开始位置是 9。它是 words 中以 [bar,the,foo] 顺序排列的连接。 子串 thefoobar 开始位置是 12。它是 words 中以 [the,foo,bar] 顺序排列的连接。提示 1 s.length 1041 words.length 50001 words[i].length 30words[i] 和 s 由小写英文字母组成 3. 算法思路 这段代码使用滑动窗口的思想来解决字符串匹配的问题。给定一个主串s和一个模式串words如果s中存在一个子串该子串包含words中所有单词且顺序一致那么这个子串就是words的一个串联子串。代码的目标是在s中寻找所有的串联子串的起始位置。 首先用一个哈希表hash1来保存模式串words中所有单词的频次。然后遍历字符串s的所有可能起始位置记为x。 接下来构建一个新的哈希表hash2用于维护滑动窗口内的单词频次。滑动窗口的起始位置为x终止位置为y窗口的长度是lenwords中单词长度的总和。每次移动窗口时将窗口右边的单词加入到hash2中并更新对应单词的频次和计数count。如果窗口内的单词频次在hash1中存在且小于等于hash1中的频次则count加1。 如果窗口的长度超过len*mm是words中单词的个数说明窗口左边的单词已经不在窗口范围内需要移出窗口并更新hash2和count。具体操作是将窗口左边的单词移出窗口并更新对应单词的频次和count。 最后当count等于m时将窗口左边的起始位置加入到结果集ret中。 最后返回ret即为所有串联子串的起始位置。 4. C算法代码 class Solution { public:vectorint findSubstring(string s, vectorstring words) {vectorint ret;unordered_mapstring,int hash1;//保存words里面所有单词的频次for(autos:words)hash1[s];int lenwords[0].size();int mwords.size();for(int i0;ilen;i)//执行len次{unordered_mapstring,inthash2;//维护窗口内单词的频次for(int lefti,righti,count0;rightlens.size();rightlen){//进窗口维护countstring ins.substr(right,len);hash2[in];if(hash1.count(in)hash2[in]hash1[in])count;//判断if(right-left1len*m){//出窗口维护countstring outs.substr(left,len);if(hash1.count(out)hash2[out]hash1[out])count--;hash2[out]--;leftlen;}//更新结果if(countm) ret.push_back(left);}}return ret;} };
http://www.sadfv.cn/news/285546/

相关文章:

  • 厦门建设网站公司惠州企业建站系统
  • 搭建网站服务器需要什么配置wap网站快速开发
  • 咸阳网站建设学校网站建设培训学院
  • 如何更换网站服务器怎么制作游戏地图
  • 濮阳网站建设熊掌号网站设计过程怎么写
  • 手机里面的网站怎么制作往网站上传照片怎么做
  • 餐饮业手机php网站商业网站域名
  • 中国建设银行南京分行网站首页游戏优化是什么意思
  • 网站dns多久刷新wordpress设置新页面跳转
  • 二手车网站开发PPT北京 做网站比较有名的
  • 广东网站建设模板可做百度百科参考资料的网站
  • 创建个人网站教程网红网站建设官网
  • c网站开发视频教程佛山新网站制作代理商
  • 预约营销型网站建设专家路由侠怎么做网站映射
  • 上海做网站推广关键词国际化的管理咨询公司
  • 做网站的客户哪里找中国网站建设公司排行榜
  • 做外单都有什么网站建个网站做网络推广要花多少钱
  • html5移动端手机网站开发流程郑州400建站网站建设
  • html5移动网站开发实例自已建外贸网站
  • 新闻门户网站免费建设网站建设兆金手指排名
  • 通州上海网站建设南宁手机模板建站
  • html下载安装购物网站怎么做优化
  • 服务器做网站FTP必要性大吗网站seo相关设置优化
  • 东阳市建设局网站沈总网站建设
  • 学校为什么要做网站wordpress火车头发布模块
  • 广州汽车网站建设网页投放广告怎么收费
  • 邢台市桥西住房建设局网站linux wordpress 建站教程
  • 周村网站制作哪家好二手交易网站怎么做
  • 用笔记本做网站服务器专注WordPress网站建设开发
  • 东莞活动网站设计模板网站首页设计布局