样本输入和输出

EX1: -

let str1 = 'stackoverflow';
let str2 = 'flowerovstack';

这些字符串是字谜。

//从 str1 创建哈希并增加一个计数。

hashMap = {
    s : 1,
    t : 1,
    a : 1,
    c : 1,
    k : 1,
    o : 2,
    v : 1,
    e : 1,
    r : 1,
    f : 1,
    l : 1,
    w : 1
}

你可以看到 hashKey’o’包含值 2,因为 o 是字符串中的 2 倍。

现在循环遍历 str2 并检查 hashMap 中是否存在每个字符,如果是,则减小 hashMap Key 的值,否则返回 false(表示它不是 anagram)。

hashMap = {
    s : 0,
    t : 0,
    a : 0,
    c : 0,
    k : 0,
    o : 0,
    v : 0,
    e : 0,
    r : 0,
    f : 0,
    l : 0,
    w : 0
}

现在,遍历 hashMap 对象并检查 hashMap 键中的所有值是否为零。

在我们的例子中,所有值都为零,因此它是一个字谜。