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

黄山网站建设免费咨询快速搭建网站 数据存储

黄山网站建设免费咨询,快速搭建网站 数据存储,.net双拼做公司网站,国内大型网站建设公司目录 1.题目2.答案3.提交结果截图4.图解 链接#xff1a; 串联所有单词的子串 1.题目 给定一个字符串 s 和一个字符串数组 words。 words 中所有字符串 长度相同。 s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接起来的子串。 例如#xff0c;如果 w… 目录 1.题目2.答案3.提交结果截图4.图解 链接 串联所有单词的子串 1.题目 给定一个字符串 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 10^41 words.length 50001 words[i].length 30words[i] 和 s 由小写英文字母组成 2.答案 class Solution {public ListInteger findSubstring(String s, String[] words) {ListInteger result new ArrayList();int wordLength words[0].length();int wordCount words.length;for (int i 0; i wordLength; i) {// 超出长度if (i wordCount * wordLength s.length()) {break;}// 初始化窗口MapString, Integer map new HashMap();for (int j 0; j wordCount; j) {String word s.substring(i j * wordLength, i (j 1) * wordLength);map.put(word, map.getOrDefault(word, 0) 1);}// 筛掉原单词数组for (String word : words) {map.put(word, map.getOrDefault(word, 0) - 1);if (map.get(word) 0) {map.remove(word);}}// 滑动窗口for (int j 0; i j wordCount * wordLength s.length(); jwordLength) {if (j ! 0) {String addWord s.substring(i j wordLength * (wordCount - 1), i j wordLength * wordCount);map.put(addWord, map.getOrDefault(addWord, 0) 1);if (map.get(addWord) 0) {map.remove(addWord);}String delWord s.substring(i j - wordLength, i j);map.put(delWord, map.getOrDefault(delWord, 0) - 1);if (map.get(delWord) 0) {map.remove(delWord);}}if (map.size() 0) {result.add(i j);}}}return result;} }3.提交结果截图 4.图解 以如下测试用例举例说明 输入s barfoothefoobarman, words [foo,bar] 输出[0,9]首先可以将字符串 s 按照单词长度进行划分通过开头跳过字符长度的方式可以分为以下三种划分方式。 以划分方式1举例可以将所有单词总长度单词数 * 单词长度来作为一个窗口从左往右滑动。 最终得到的 index0 和 index9 就是我们的结果了。 整理完毕完结撒花~
http://www.hkea.cn/news/14364018/

相关文章:

  • 中国未来巨型空间站装修设计软件免费版下载
  • 网站顶部下拉广告代码番禺网站开发技术
  • node做网站后台wordpress产品增加视频
  • 手机直播网站开发《php与mysql网站开发全接触》光盘源码.rar
  • 怎么做分享软件的网站检察院门户网站建设
  • 手机开发网站教程做外贸a货网站
  • 自己建个网站多少钱网站做行测题
  • 北京高端网站建设宣传陵水网站建设
  • 温州专业全网推广建站公司网站开发赚钱么
  • 手机网站制作天强科技福州公司网站
  • 中国做的比较好的网站设计公司有哪些合肥建公司网站
  • vue单页面做网站加载慢网站建设基本标准
  • 自己建个电影网站可以吗免费做的英文网站
  • HTML和PHP怎么做网站爱站网功能
  • 进下加强新闻宣传网站建设深圳网站设计公司让您放心省心
  • 移动网站建站视频商业网页设计与制作图片
  • 湘潭网站建设 沟通磐石网络北京国税局网站做票种核定
  • 上海网站推广山东省城乡建设厅网站
  • 宁波网站建设设计报告p2p提供网站建设违法
  • 网站安全和信息化建设内部搜索引擎优化
  • 站酷海报设计图片四川宜宾建设局官方网站
  • 网站设置快捷方式流量推广平台有哪些
  • 大气的外贸公司名字seo企业站收录
  • 考生登录贵州省住房和城乡建设厅网站自适应wordpress主题
  • 两学一做夜校网站wordpress可以自定义模型吗
  • 营销网站建设hanyouswordpress调用产品图片
  • 做购物网站收费机械设计师网课
  • 网站设计是干什么的linux html转wordpress
  • 做电锯电音的网站重庆潼南网站建设报价
  • 企业开源网站系统远程时代网站建设