242. 有效的字母异位词
给定两个字符串 s
和 t
,编写一个函数来判断 t
是否是 s
的字母异位词。
**注意:**若 s
和 *t*
中每个字符出现的次数都相同,则称 s
和 t
互为字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
哈希表
用一个 [26]int
来代替 map[byte]int
三个循环
func isAnagram(s string, t string) bool {
if len(s) != len(t) {
return false
}
var hash [26]int
for _, letter := range s {
hash[letter-'a']++
}
for _, letter := range t {
if hash[letter-'a'] == 0 {
return false
}
hash[letter-'a']--
}
for i := 0; i < 26; i++ {
if hash[i] > 0 {
return false
}
}
return true
// 甚至可以酱紫写 xia
// return record == [26]int{}
}