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

抄袭网站案例网页微信版本在哪里下载

抄袭网站案例,网页微信版本在哪里下载,网站建设设计780元全包,永久免费开网店app滑动窗口 找到字符串中所有字母异位词滑动窗口数组优化 上期经典 找到字符串中所有字母异位词 难度 - 中等 Leetcode 438 - 找到字符串中所有字母异位词 给定两个字符串 s 和 p#xff0c;找到 s 中所有 p 的 异位词 的子串#xff0c;返回这些子串的起始索引。不考虑答案输出… 滑动窗口 找到字符串中所有字母异位词滑动窗口数组优化 上期经典 找到字符串中所有字母异位词 难度 - 中等 Leetcode 438 - 找到字符串中所有字母异位词 给定两个字符串 s 和 p找到 s 中所有 p 的 异位词 的子串返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列形成的字符串包括相同的字符串。 示例 1: 输入: s “cbaebabacd”, p “abc” 输出: [0,6] 解释: 起始索引等于 0 的子串是 “cba”, 它是 “abc” 的异位词。 起始索引等于 6 的子串是 “bac”, 它是 “abc” 的异位词。 示例 2: 输入: s “abab”, p “ab” 输出: [0,1,2] 解释: 起始索引等于 0 的子串是 “ab”, 它是 “ab” 的异位词。 起始索引等于 1 的子串是 “ba”, 它是 “ab” 的异位词。 起始索引等于 2 的子串是 “ab”, 它是 “ab” 的异位词。 提示: 1 s.length, p.length 3 * 1e4 s 和 p 仅包含小写字母 滑动窗口 这个所谓的字母异位词不就是排列吗相当于输入一个串 S一个串 T找到 S 中所有 T 的排列返回它们的起始索引。 因为字符串 p 的异位词的长度一定与字符串 p 的长度相同所以我们可以在字符串 s 中构造一个长度为与字符串 p 的长度相同的滑动窗口并在滑动中维护窗口中每种字母的数量当窗口中每种字母的数量与字符串 p 中每种字母的数量相同时则说明当前窗口为字符串 p 的异位词。 构造滑动窗口时我们用双指针右指针代表扩大窗口左指针代表缩小窗口在扩大和缩小窗口时我们把满足条件的字符加入到对比的hash 表中 代码演示 /*** 异位* param s* param p* return*/public ListInteger findAnagrams(String s, String p) {HashMapCharacter, Integer need new HashMap();HashMapCharacter, Integer wind new HashMap();//将目标值加进来for (char c : p.toCharArray()){need.put(c,need.getOrDefault(c,0) 1);}int left 0;int right 0;int valid 0;ArrayListInteger ans new ArrayList();while (right s.length()){char c s.charAt(right);right;if (need.containsKey(c)){wind.put(c,wind.getOrDefault(c,0) 1);if (need.get(c).equals(wind.get(c))){valid;}}//判断什么时候缩小窗口while (right - left p.length()){//满足条件时 将起始位置加进去if (valid need.size()){ans.add(left);}char d s.charAt(left);left;if (need.containsKey(d)){if (wind.get(d).equals(need.get(d))){valid--;}wind.put(d,wind.get(d) - 1);}}}return ans;}数组优化 因为 题目中说是小写字母组成的范围就是固定的可以利用数组来优化掉hash 表 带来两个好处 1.时间更快数组的效率高于hash. 2.空间更省数组占用空间小于hash. 代码演示 public ListInteger findAnagrams(String s, String p) {ArrayListInteger ans new ArrayList();int n s.length();int m p.length();if (n m){return ans;}int[] need new int[26];int[] wind new int[26];//将目标值加进来for (char c : p.toCharArray()){need[c - a];}int left 0;int right 0;while (right n){char c s.charAt(right);right;if (need[c - a] ! 0){wind[c - a];}//判断什么时候缩小窗口while (right - left m){//满足条件时 将起始位置加进去if (Arrays.equals(need,wind)){ans.add(left);}char d s.charAt(left);left;if (need[d - a] ! 0){wind[d - a]--;}}}return ans;} 上期经典 leetcode 567. 字符串的排列
http://www.dnsts.com.cn/news/279674.html

相关文章:

  • 网站反连接北京汽车业务网站开发公司
  • 专业的食品行业网站开发ppt资源网免费
  • 群辉nas怎么做网站android开发是做什么的
  • 做编辑器的网站机关网站建设创新
  • 大连公司做网站网站对应的ip地址吗
  • 常见的网站模式网站设计的必要性
  • 嘉兴网站排名永兴县网站建设服务商
  • 网站内容为王网站设计seo
  • asp网站建设 iis配置自己网站建设
  • 深圳企业企业网站建设最大源码网站
  • 推荐网站建设收费标准南京浦口网站建设
  • 网站设计书籍模板做图 网站有哪些
  • 班级网站建设首页报告如何策划网站
  • 常见的网站类型上海人才引进官网
  • No物流网站建设app网站制作要多少费用
  • vs2017网站开发怎么查看网站备案商
  • 百度抓取网站登录无极电影网迅雷下载
  • 域名备案以后怎么建设网站常德注册公司流程及费用
  • 什么是网站ui设计企业咨询师
  • 长沙网开亿面做网站多少钱长沙优化科技有限公司正规吗
  • wordpress完整安装包做网站建设优化的公司排名
  • 宠物网站模板服装网站建设的利益分析
  • 重庆网站制作长沙广告传媒公司注册费用
  • 网站建设和网络优化旅游网站模板大全
  • 福州手机建站模板中国前500强企业名单
  • 有没有免费的网站软件给公司制作网站吗
  • 无锡崇安网站建设wordpress 如何重启
  • 网站备案成功后怎么弄慈溪市住房和城乡建设局网站
  • 快手评论点赞网站建设专业分站oppo开发者选项在哪里打开
  • 网站首页关键词wordpress api 自定义认证