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

甘肃兰州做网站wordpress英文变成中文

甘肃兰州做网站,wordpress英文变成中文,网上墓地 wordpress,一级a做爰片免费网站给我看看目录 串联所有单词的⼦串#xff08;hard#xff09; 题目解析 讲解算法原理 编写代码 最⼩覆盖⼦串#xff08;hard#xff09; 题目解析 讲解算法原理 编写代码 串联所有单词的⼦串#xff08;hard#xff09; 题目解析 1.题目链接#xff1a;. - 力扣#…目录 串联所有单词的⼦串hard 题目解析 讲解算法原理 编写代码 最⼩覆盖⼦串hard 题目解析 讲解算法原理 编写代码 串联所有单词的⼦串hard 题目解析 1.题目链接. - 力扣LeetCode 2.题目描述 给定⼀个字符串s和⼀个字符串数组words。words中所有字符串⻓度相同。 s中的串联⼦串是指⼀个包含words中所有字符串以任意顺序排列连接起来的⼦串。 ◦ 例如如果words[)ab),)cd),)ef)]那 么)abcdef))abefcd))cdabef))cdefab))efabcd)和)efcdab)都是串联⼦串。)acdbef)不是串联⼦串因为他不是任何words排列的连接。 返回所有串联字串在s中的开始索引。你可以以任意顺序返回答案。 ⽰例1 输⼊s)barfoothefoobarman),words[)foo),)bar)]输出[0,9] 解释因为words.length2同时words[i].length3连接的⼦字符串的⻓度必须为6。⼦串)barfoo)开始位置是0。它是words中以[)bar),)foo)]顺序排列的连接。 ⼦串)foobar)开始位置是9。它是words中以[)foo),)bar)]顺序排列的连接。输出顺序⽆关紧要。返回[9,0]也是可以的。 ⽰例2 输⼊s)wordgoodgoodgoodbestword),words[)word),)good),)best),)word)]输出[] 解释因为words.length4并且words[i].length4所以串联⼦串的⻓度必须为16。s中没有⼦串⻓度为16并且等于words的任何顺序排列的连接。 所以我们返回⼀个空数组。 ⽰例3 输⼊s)barfoofoobarthefoobarman),words[)bar),)foo),)the)]输出[6,9,12] 解释因为words.length3并且words[i].length3所以串联⼦串的⻓度必须为9。⼦串)foobarthe)开始位置是6。它是words中以[)foo),)bar),)the)]顺序排列的连接。⼦串)barthefoo)开始位置是9。它是words中以[)bar),)the),)foo)]顺序排列的连接。⼦串)thefoobar)开始位置是12。它是words中以[)the),)foo),)bar)]顺序排列的连接。 提⽰ 1s.length104 1words.length5000 1words[i].length30 words[i]和s由⼩写英⽂字⺟组成 讲解算法原理 解法⼀暴⼒解法 算法思路 如果我们把每⼀个单词看成⼀个⼀个字⺟问题就变成了找到「字符串中所有的字⺟异位词」。⽆⾮就是之前处理的对象是⼀个⼀个的字符我们这⾥处理的对象是⼀个⼀个的单词。 编写代码 c算法代码 class Solution { public:vectorint findSubstring(string s, vectorstring words) {vectorint ret;unordered_mapstring, int hash1; // 保存 words ⾥⾯所有单词的频次for(auto s : words) hash1[s];int len words[0].size(), m words.size();for(int i 0; i len; i) // 执⾏ len 次{unordered_mapstring, int hash2; // 维护窗⼝内单词的频次for(int left i, right i, count 0; right len s.size(); right len){// 进窗⼝ 维护 countstring in s.substr(right, len);hash2[in];if(hash1.count(in) hash2[in] hash1[in]) count;// 判断if(right - left 1 len * m){// 出窗⼝ 维护 countstring out s.substr(left, len);if(hash1.count(out) hash2[out] hash1[out]) count--;hash2[out]--;left len;}// 更新结果if(count m) ret.push_back(left);}}return ret;} }; java算法代码 class Solution {public ListInteger findSubstring(String s, String[] words) {ListInteger ret new ArrayListInteger();// 保存字典中所有单词的频次MapString, Integer hash1 new HashMapString, Integer(); for(String str : words) hash1.put(str, hash1.getOrDefault(str, 0) 1);int len words[0].length(), m words.length;for(int i 0; i len; i) // 执⾏次数{// 保存窗⼝内所有单词的频次MapString, Integer hash2 new HashMapString, Integer(); for(int left i, right i, count 0; right len s.length(); right len){// 进窗⼝ 维护 countString in s.substring(right, right len);hash2.put(in, hash2.getOrDefault(in, 0) 1);if(hash2.get(in) hash1.getOrDefault(in, 0)) count; // 判断if(right - left 1 len * m){// 出窗⼝ 维护 countString out s.substring(left, left len);if(hash2.get(out) hash1.getOrDefault(out, 0)) count--;hash2.put(out, hash2.get(out) - 1);left len;}// 更新结果if(count m) ret.add(left);}}return ret;} } 最⼩覆盖⼦串hard 题目解析 1.题目链接. - 力扣LeetCode 2。题目描述 给你⼀个字符串s、⼀个字符串t。返回s中涵盖t所有字符的最⼩⼦串。如果s中不存在涵盖t所有字符的⼦串则返回空字符串。 注意 对于t中重复字符我们寻找的⼦字符串中该字符数量必须不少于t中该字符数量。如果s中存在这样的⼦串我们保证它是唯⼀的答案。 ⽰例1 输⼊s)ADOBECODEBANC),t)ABC)输出)BANC) 解释 最⼩覆盖⼦串)BANC)包含来⾃字符串t的*A*、*B*和*C*。⽰例2 输⼊s)a),t)a)输出)a) 解释 整个字符串s是最⼩覆盖⼦串。⽰例3: 输⼊:s)a),t)aa)输出: 解释: t中两个字符*a*均应包含在s的⼦串中 因此没有符合条件的⼦字符串返回空字符串。 讲解算法原理 解法滑动窗⼝哈希表 算法思路 ◦ 研究对象是连续的区间因此可以尝试使⽤滑动窗⼝的思想来解决。 ◦ 如何判断当前窗⼝内的所有字符是符合要求的呢 我们可以使⽤两个哈希表其中⼀个将⽬标串的信息统计起来另⼀个哈希表动态的维护窗⼝内字符串的信息。 当动态哈希表中包含⽬标串中所有的字符并且对应的个数都不⼩于⽬标串的哈希表中各个字符的个数那么当前的窗⼝就是⼀种可⾏的⽅案。 算法流程 a. 定义两个全局的哈希表 1 号哈希表 hash1 ⽤来记录⼦串的信息 2 号哈希表 hash2 ⽤来记录⽬标串 t 的信息 b. 实现⼀个接⼝函数判断当前窗⼝是否满⾜要求 i. 遍历两个哈希表中对应位置的元素 • 如果 t 中某个字符的数量⼤于窗⼝中字符的数量也就是 2 号哈希表某个位置⼤于 1 号哈希表。说明不匹配返回 false • 如果全都匹配返回 true 。主函数中 a. 先将 t 的信息放⼊ 2 号哈希表中 b. 初始化⼀些变量左右指针 left 0right 0 ⽬标⼦串的⻓度 len   INT_MAX ⽬标⼦串的起始位置 retleft 通过⽬标⼦串的起始位置和⻓度我们就能找到结果 c. 当 right ⼩于字符串 s 的⻓度时⼀直下列循环 i. 将当前遍历到的元素扔进 1 号哈希表中 ii. 检测当前窗⼝是否满⾜条件 • 如果满⾜条件 ◦ 判断当前窗⼝是否变⼩。如果变⼩更新⻓度 len 以及字符串的起始位置 retleft ◦ 判断完毕后将左侧元素滑出窗⼝顺便更新 1 号哈希表 ◦ 重复上⾯两个过程直到窗⼝不满⾜条件 iii. right 遍历下⼀个元素 d. 判断 len 的⻓度是否等于 INT_MAX i. 如果相等说明没有匹配返回空串 ii. 如果不想等说明匹配返回 s 中从 retleft 位置往后 len ⻓度的字符串。 编写代码 c算法代码 class Solution { public:string minWindow(string s, string t) {int hash1[128] { 0 }; // 统计字符串 t 中每⼀个字符的频次int kinds 0; // 统计有效字符有多少种for(auto ch : t)if(hash1[ch] 0) kinds;int hash2[128] { 0 }; // 统计窗⼝内每个字符的频次int minlen INT_MAX, begin -1;for(int left 0, right 0, count 0; right s.size(); right){char in s[right];if(hash2[in] hash1[in]) count; // 进窗⼝ 维护 countwhile(count kinds) // 判断条件{if(right - left 1 minlen) // 更新结果{minlen right - left 1;begin left;}char out s[left];if(hash2[out]-- hash1[out]) count--; // 出窗⼝ 维护 count }}if(begin -1) return ;else return s.substr(begin, minlen);} }; java算法代码 class Solution {public String minWindow(String ss, String tt) {char[] s ss.toCharArray();char[] t tt.toCharArray();int[] hash1 new int[128]; // 统计字符串 t 中每⼀个字符的频次int kinds 0; // 统计有效字符有多少种for(char ch : t)if(hash1[ch] 0) kinds;int[] hash2 new int[128]; // 统计窗⼝内每个字符的频次int minlen Integer.MAX_VALUE, begin -1;for(int left 0, right 0, count 0; right s.length; right){char in s[right];if(hash2[in] hash1[in]) count; // 进窗⼝ 维护 countwhile(count kinds) // 判断条件{if(right - left 1 minlen) // 更新结果{minlen right - left 1;begin left;}char out s[left];if(hash2[out]-- hash1[out]) count--; // 出窗⼝ 维护 count }}if(begin -1) return new String();else return ss.substring(begin, begin minlen);} }
http://www.dnsts.com.cn/news/114596.html

相关文章:

  • 如何个网站做二维码网络规划设计师教程第二版pdf下载
  • 网站开发应看什么书籍用wp做网站备案
  • 自动采集更新的网站wordpress微信里的小程序找不到了
  • 成都网站建设工作聊城企业网站建设
  • 建设体育用品网站分析福建省城乡建设网站
  • 中国企业网站如何将wordpress转成小程序
  • 广东省工程建设注册中心网站2023年php凉透了
  • 在静安正规的设计公司网站试用网站 源码
  • 自己做网站必须要学哪些国家先进制造业集群
  • 百度如何注册公司网站静态网页设计与制作实训报告
  • 二手车网站怎么做西安网易网站建设
  • wordpress 3.3.2整站seo公司
  • 网站后台管理系统使用宁夏网站建设费用地址
  • 泰州住房城乡建设网站做网站放广告赚钱
  • 上线了怎么做网站宁波做外贸网站
  • 潍坊美丽乡村建设一般发了哪个网站网站空间租赁合同
  • 我要建设公司网站wordpress查看ftp服务器
  • 凡科网站做商城眉山市网站建设
  • 自已做网站网页版微信官方免费
  • 一元购物网站怎么做建设网站费怎么入账
  • 英文官网建设哈尔滨seo网站管理
  • 自己做网站 什么江苏太平洋建设集团官方网站
  • 网站建设先进个人事迹深圳百度关键字优化
  • 做安居客网站需要什么浏览器什么是网站的功能模块
  • 连网站建设神马收录提交入口
  • 安徽福凯建设集团网站wordpress phpdisk
  • 制作个人业务网站哪里有网页设计培训
  • 惠州网站建设创业网站建设合同违约条款
  • 上海学习网站建设坪地网站建设如何
  • 什么叫网站建设四网合一设计制作简单的手机网站