剑指 Offer II 032. 有效的变位词

166 阅读1分钟

剑指 Offer II 032. 有效的变位词

给定两个字符串 s 和 t ,编写一个函数来判断它们是不是一组变位词(字母异位词)。

注意:若 s 和 t 中每个字符出现的次数都相同且字符顺序不完全相同,则称 s 和 t 互为变位词(字母异位词)。

这是一个套路,在很多地方都用到了,就是借用了ASCII码值

var isAnagram = function(s, t) {
    var len1 = s.length;
    var len2 = t.length;
    if(s == t || len1 !== len2){
        return false
    }
    var arr = new Array(26).fill(0)
    for(var i =0;i<len1;i++){
        ++arr[s[i].charCodeAt() - 'a'.charCodeAt()]
        --arr[t[i].charCodeAt() - 'a'.charCodeAt()]
    }
    return arr.every(v=>v === 0)
};