给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
C++
#include<string.h>
class Solution {
public:
bool isAnagram(string s, string t)
{
int m=s.length();
int n=t.length();
if(m!=n)
{
return false;
}
map<char,int> tmp;
for(int i=0;i<m;i++)
{
tmp[s[i]]++;
tmp[t[i]]--;
}
for(auto it:tmp)
{
if(it.second)
{
return false;
}
}
return true;
}
};
python
class Solution:
def isAnagram(self, s, t):
"""
:type s: str
:type t: str
:rtype: bool
"""
m=len(s)
n=len(t)
if m!=n:
return False
dic={}
for v in s:
if v not in dic:
dic[v]=1
else:
dic[v]+=1
for v in t:
if v not in dic:
return False
else:
dic[v]-=1
for key in dic:
if dic[key]!=0:
return False
return True