242. 有效的字母异位词
哈希表
思路
哈希表record[26]用于统计串 s 中字母的出现次数,哈希函数:s.charAt(i) - 'a' 将串 s 中的字母映射到[0,25]哈希表下标。
然后遍历串 t,减去record[26]中对应字母的次数。
若record[26]中元素均为0,则两串互为字母异位词;否则,不是。
class Solution {
public boolean isAnagram(String s, String t) {
int[] record = new int[26]; // 统计每个字符出现的次数
for (int i = 0; i < s.length(); i++) {
record[s.charAt(i) - 'a']++;
}
for (int i = 0; i < t.length(); i++) {
record[t.charAt(i) - 'a']--;
}
for (int i = 0; i < 26; i++) { // 若 record 数组中元素均为0,则互为字母异位词
if (record[i] != 0) {
return false;
}
}
return true;
}
}