题目:
Given two strings s and t, write a function to determine if t is an anagram of s.
For example,
s = "anagram", t = "nagaram", return true.
s = "rat", t = "car", return false.
Note:
You may assume the string contains only lowercase alphabets.
Follow up:
What if the inputs contain unicode characters? How would you adapt your solution to such case?
思路:
面试练手的题目,千万不能出错。。。
代码:
class Solution {
public:
bool isAnagram(string s, string t) {
unordered_map<char, int> hash;
for (auto val : s) {
++hash[val];
}
for (auto val : t) {
--hash[val];
}
for (auto val : hash) {
if (val.second != 0) {
return false;
}
}
return true;
}
};
本文介绍了一种使用哈希表的方法来判断两个字符串是否互为字谜。通过遍历两个字符串并更新哈希表中的计数,最终检查所有字符计数是否归零来实现。此外还探讨了如何应对包含Unicode字符的情况。
968

被折叠的 条评论
为什么被折叠?



