字母异位词指字母相同,但排列不同的字符串。 不考虑答案输出的顺序。 示例1: 输入:s:"cbaebabacd"p:"abc"输出:[0,6]解释:起始索引等于0的子串是"cba",它是"abc"的字母异位词。 起始索引等于6的子串是"bac",它是"abc"的字母异位词。 示例2: 输入:s:"abab"p:"ab"输出:[0,1,2]解释:起始索引等于...
vector<int> findAnagrams(string s, string p) { int s_len = s.size(), p_len = p.size(); vector<int> sCount(26); vector<int> pCount(26); vector<int> ans; if(s_len < p_len) return vector<int>(); for(int i=0; i<p_len; i++) { sCount[s[i]-'a']++; pCount[p[...
思路:用map记录target字符串中字符出现的个数,然后维护滑动窗口遍历字符串,具体见代码 思想:滑动窗口 复杂度:时间O(n),空间O(n) classSolution{publicList<Integer>findAnagrams(String s,String p){List<Integer>res=newArrayList();int[]map=newint[26];intlen=p.length();// p比s长,返回空if(s.length(...
起始索引等于 1 的⼦串是 "ba", 它是 "ab" 的字母异位词。起始索引等于 2 的⼦串是 "ab", 它是 "ab" 的字母异位词。思路:滑动窗⼝ class Solution { public:vector<int> findAnagrams(string s, string p) { vector<int> pCounter(26,0);vector<int> sCounter(26,0),vec;for(auto ch:p...