
class Solution {
public:
bool isAnagram(string s, string t) {
if (s.length() != t.length()) return false;
int N = s.length();
map<char, int> freq_t, freq_s;
for(int i=0; i<N; i++){
freq_t[t[i]]++;
freq_s[s[i]]++;
}
return (freq_t == freq_s);
}
};
本文介绍了一种高效的算法,用于判断两个字符串是否为异位词。通过使用字符频率映射,该算法能在O(N)的时间复杂度内完成判断,其中N为字符串长度。文章详细解释了算法的实现原理,并提供了C++代码示例。

class Solution {
public:
bool isAnagram(string s, string t) {
if (s.length() != t.length()) return false;
int N = s.length();
map<char, int> freq_t, freq_s;
for(int i=0; i<N; i++){
freq_t[t[i]]++;
freq_s[s[i]]++;
}
return (freq_t == freq_s);
}
};
127
498

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