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

如何建设自己的摄影网站做网站的公司

如何建设自己的摄影网站,做网站的公司,做带会员后台的网站用什么软件,wordpress建站赚钱题目链接 剑指 Offer II 015. 字符串中的所有变位词 mid 题目描述 给定两个字符串 s和 p,找到 s中所有 p的 变位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 变位词 指字母相同,但排列不同的字符串。 示例 1: 输…

题目链接

剑指 Offer II 015. 字符串中的所有变位词 mid

题目描述

给定两个字符串 sp,找到 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∗1041 <= s.length, p.length <= 3 * 10^41<=s.length,p.length<=3104
  • sp仅包含小写字母

分析:

先用一个 cnt[26]记录p中字符出现的次数的负数。

用两个指针 ij组成滑动窗口遍历 s。向右遇到一个新的字符,cnt[s[j]]++。当 cnt[s[j] > 0时,说明区间 [i,j]中有多余的字符。需要移动指针 i,从窗口中去掉多余的字符,cnt[s[i]]--

cnt[s[j] == 0j - i + 1 == s2.length时,说明此时 s[i,j]就是 p的变位词。记录区间起点 i到答案 ans中。

时间复杂度:O(n)O(n)O(n)

C++代码:

class Solution {
public:vector<int> findAnagrams(string s, string p) {int m = s.size() , n = p.size();int cnt[26] = {0};for(auto &c:p) cnt[c - 'a']--;vector<int> ans;for(int i = 0,j = 0;j < m;j++){cnt[s[j] - 'a']++;while(cnt[s[j] - 'a'] > 0){cnt[s[i] - 'a']--;i++;}if(j -i + 1 == n) ans.push_back(i);}return ans;}
};

Java代码:

class Solution {public List<Integer> findAnagrams(String s, String p) {List<Integer> ans = new ArrayList<>();int m = s.length();int n = p.length();int[] cnt = new int[26];for(var c:p.toCharArray()) cnt[c - 'a']--;for(int i = 0,j = 0;j < m;j++){cnt[s.charAt(j) - 'a']++;while(cnt[s.charAt(j) - 'a'] > 0){cnt[s.charAt(i) - 'a']--;i++;}if(j - i + 1 == n) ans.add(i);}return ans;}
}
http://www.hkea.cn/news/527109/

相关文章:

  • 企业展示网站 数据库设计模板自助建站
  • 房地产设计师上海seo网络优化
  • wordpress迁移打不开百度seo泛解析代发排名
  • 网站兼容性测试怎么做微信营销软件群发
  • wordpress如何设置内容页seo营销优化
  • 高端大气的网站制作南宁百度seo软件
  • 沙井营销型网站建设成人培训机构
  • 网站没有被百度收录搜索引擎排名优化公司
  • 手机网站转换小程序晋江怎么交换友情链接
  • 专业做网站的公司疫情放开最新消息今天
  • 不用写代码做网站软件长沙优化网站
  • o2o商城网站建设方案广告策划案优秀案例
  • 日照做网站的那家做的好百度网页链接
  • 建设云个人证件查询系统上海seo培训
  • 网站流量提供商杭州seo排名
  • 做装饰工程的在什么网站投标自建站
  • 地球人--一家只做信誉的网站帮忙推广的平台
  • 网站建设外包协议天津网站排名提升
  • 邯郸教育行业网站建设百度推广代理商查询
  • 政府网站有哪些网站seo最新优化方法
  • 做广告牌子seo外链工具
  • 微信页面设计网站兰州网络推广技术
  • 上门做网站搜狗站长工具
  • wordpress用户邮箱验证码百度seo搜索引擎优化培训
  • 360极速怎么屏蔽网站新闻热点大事件
  • 购物app开发价格表站长工具seo排名
  • 微餐饮网站建设营销型网站建设方案
  • 高端网站建设公司好不好2020国内搜索引擎排行榜
  • 网站建设服务公司选哪家比较好?苏州优化收费
  • 中国建设银行河南省分行网站推广信息哪个平台好