题目
解法:
class Solution {
public:
void get_ana(vector<int>& ana,string word){
for(auto& c : word){
ana[c-'a']++;
}
}
vector<string> removeAnagrams(vector<string>& words) {
vector<int> curr(26,0);
get_ana(curr,words[0]);
vector<string> ans;
ans.push_back(words[0]);
for(int i=1;i<words.size();i++){
vector<int> next(26,0);
get_ana(next,words[i]);
if(curr != next){
ans.push_back(words[i]);
curr = next;
}
}
return ans;
}
};
时间复杂度:O(n*m),n为单词个数,m为单词平均长度
空间复杂度:O(26)