1. 题目来源
2. 题目说明
3. 题目解析
方法一:排序
。。。
代码:
class Solution {
public:
bool isAnagram(string s, string t) {
sort(s.begin(), s.end());
sort(t.begin(), t.end());
return s == t;
}
};
方法二:哈希表
STL
容器大多支持比较运算,两个哈希表可以直接判等。
至于让判断 unicode
字符,这玩意用两个 char
存一个 unicode
字符,所以用 string
来作为哈希表参数不就行了。大不了字符串哈希。
代码:
class Solution {
public:
bool isAnagram(string s, string t) {
unordered_map<char, int> m1, m2;
for (auto e : s) m1[e] ++;
for (auto e : t) m2[e] ++;
return m1 == m2;
}
};