樣本輸入和輸出
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 鍵中的所有值是否為零。
在我們的例子中,所有值都為零,因此它是一個字謎。