242. Valid Anagram
【思路】
anagram的意思是把单词的字母顺序打乱,重新排列后变成一个新单词 .本题中已知一个单词s,给一个字符串t求t是否可以组合成单词s。
排序 或者 字母计数
bool isAnagram(string s, string t) {
sort(s.begin(),s.end());
sort(t.begin(),t.end());
if(s == t)
return true;
return false;
}
或者:
bool isAnagram(string s, string t) {
vector<int> count(26, 0);
for(int i = 0; i < s.size(); i ++)
count[s[i]-'a'] ++;
for(int i = 0; i < t.size(); i ++)
count[t[i]-'a'] --;
for(int i = 0; i < 26; i ++)
if(count[i] != 0)
return false;
return true;
}