算法练习-哈希表-有效的字母异位词

71 阅读1分钟

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

示例 1:

输入: s = "anagram", t = "nagaram" 输出: true 示例 2:

输入: s = "rat", t = "car"

 * @param {string} s
 * @param {string} t
 * @return {boolean}
 */
var isAnagram = function (s, t) {
  if (s.length !== t.length) return false
  const charMap = new Map()
  for (let i of s) {
    charMap.set(i, (charMap.get(i) || 0) + 1)
  }
  for (let i of t) {
    if (!charMap.get(i)) return false
    charMap.set(i, charMap.get(i) - 1)
  }
  return true
}
console.log(isAnagram("abaca", "abbbb"))