东莞做网站哪里好搜索引擎优化的内容
我果然还是太菜了(点烟)。
一开始想法是构建map,记录每个字母出现的位置,后来想了好久滑动窗口该怎么移动。
后来看了答案才明白滑动窗口是固定的啊啊啊,每次向右滑就两指针同时右移就行。
好简单……为什么我做了这么久…………
class Solution {
public:vector<int> findAnagrams(string s, string p) {unordered_map<char,int> mp;vector<int> result;int low=0;int high=0;for(int i=0;i<p.size();i++){mp[p[i]]++;mp[s[high]]--;if(mp[p[i]]==0) mp.erase(p[i]);if(mp[s[high]]==0) mp.erase(s[high]);high++;}if(mp.empty()) result.push_back(low);while(high<s.size()){mp[s[high]]--;mp[s[low]]++;if(mp[s[low]]==0) mp.erase(s[low]);if(mp[s[high]]==0) mp.erase(s[high]);high++;low++;if(mp.empty()) result.push_back(low);}return result;}
};