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

企业网站页面图片网盘资源共享网站

企业网站页面图片,网盘资源共享网站,接任务做兼职的的网站,长沙微商城网站建设给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 示例 1: 输入: s "cbaebabacd", p "abc" 输出: [0,6] 解释: 起始索引等于 0 的子串是 "cba", 它是 "a…

给定两个字符串 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 * 104
  • s 和 p 仅包含小写字母

时间复杂度太大 md 

public List<Integer> findAnagrams(String s, String p) {char[] chars = p.toCharArray();Arrays.sort(chars); //排序完的字符串数组//创建对象String sorted = new String(chars);//键:p字符串  值:异位词下标HashMap<String, List<Integer>> map = new HashMap<>();map.put(sorted, new LinkedList<Integer>());//遍历s字符串for (int left = 0; left < s.length(); left++) {int right = left + p.length();if (right <= s.length()) {//截取s字符串的p.length()个单位String substring = s.substring(left, right);char[] chars2 = substring.toCharArray();Arrays.sort(chars2); //排序完的字符串数组String sorted2 = new String(chars2);//判断 sorted sorted2 是否一致 因为按照重排的计算if (Objects.equals(sorted2, sorted)) {map.get(sorted).add(left);}}}List<Integer> result = map.get(sorted);return result;}
/*** 哈希表 + 滑动窗口* abab  ab*/public List<Integer> findAnagrams2(String s, String p) {List<Integer> ans = new ArrayList<>();int n = s.length(), m = p.length(); //m = 2/*** 我们可以先创建一个大小为 26 的数组 c2 来统计字符串 p 的词频,* 另外一个同等大小的数组 c1 用来统计「滑动窗口」内的 s 的子串词频* 当两个数组所统计词频相等,说明找到了一个异位组,将窗口的左端点加入答案。*/int[] c1 = new int[26], c2 = new int[26];//更新c2的哈希表for (int i = 0; i < m; i++) c2[p.charAt(i) - 'a']++;for (int left = 0, right = 0; right < n; right++) {//c1[s.charAt(right) - 'a']++;//双指针if (right - left + 1 > m) c1[s.charAt(left++) - 'a']--;if (check(c1, c2)) ans.add(left);}return ans;}boolean check(int[] c1, int[] c2) {for (int i = 0; i < 26; i++) {if (c1[i] != c2[i]) return false;}return true;}//来源:leetcode 宫水三叶

http://www.ds6.com.cn/news/87664.html

相关文章:

  • 怎么建投票网站深圳网站seo优化公司
  • 做管理信息的网站网络推广网站的方法
  • 视频网站系统开发深圳关键词快速排名
  • 多城市网站开发中国疫情最新消息
  • 郑州php网站建设seo托管公司
  • 建筑案例的网站有哪些方面上海seo推广服务
  • 计算机毕业论文代做网站什么是网络营销与直播电商
  • php做的网站模板下载企业网站制作要求
  • 浏阳网站建设卷云网络今天头条新闻100条
  • 专做ppt的网站seo排名快速上升
  • 免费的建筑设计网站百度关键词搜索
  • 建个微网站多少钱百度应用商店app
  • 怎样破解网站后台密码常见的网络营销工具
  • 织梦手机网站怎么做推广引流渠道
  • 漯河网站建设电话网站推广排名公司
  • 做照片书哪个网站好百度手机助手下载2022官方正版
  • 公诚管理咨询有限公司百度seo价格
  • 网站建设高端培训seo搜索引擎优化排名哪家更专业
  • 找不同 网站开发官网seo
  • 小程序网站备案免费网络推广
  • wordpress指定文章标题seoul是哪个国家
  • 有免费做推广的网站吗seo课程总结怎么写
  • wordpress 4.7.3 慢优化网站推广网站
  • 万网 成品网站软文营销策划方案
  • 网站建设公司有多少家网站备案
  • 广告设计与制作的公司seo关键词排名系统
  • 手机端网站ui做多少像素线上推广产品
  • 手机网站建设开什么类型的票seo做得比较好的企业案例
  • wap医院网站模板 for dedecms v1.0产品如何做市场推广
  • 嘉兴seo网站建设费用优化20条措施