题目描述
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。
题解
两个数组分别记录单词中字母出现的个数,之后进行对比,若完全相同则为字母异位词
class Solution {
public:
bool isAnagram(string s, string t) {
int A[26]={0}, B[26]={0};
for(int i=0;i<s.size();i++)
{
A[s[i]-'a']++;
}
for(int i=0;i<t.size();i++)
{
B[t[i]-'a']++;
}
for(int i=0;i<26;i++)
{
if(A[i]!=B[i])
return false;
}
return true;
}
};
注意事项
1.无需记住a的ASCII码,直接-‘a’即可