Leetcode - 242. Valid Anagram
Approach 1 /** * @param {string} s * @param {string} t * @return {boolean} */ var isAnagram = function(s, t) { let sortedSArr = s.split('').sort(); let sortedTArr = t.split('').sort(); if (sortedSArr.length != sortedTArr.length) return false; for (let i = 0 ; i

Approach 1
/**
* @param {string} s
* @param {string} t
* @return {boolean}
*/
var isAnagram = function(s, t) {
let sortedSArr = s.split('').sort();
let sortedTArr = t.split('').sort();
if (sortedSArr.length != sortedTArr.length) return false;
for (let i = 0 ; i < sortedSArr.length;i++){
if(sortedSArr[i]!== sortedTArr[i]){
return false
}
}
return true;
};
this is not optimal solution
Approach 2
Using Hashmap makes it more faster
var isAnagram = function(s, t) {
if(s.length != t.length) return false;
let lookup = {};
for(let i = 0; i < s.length; i++) {
lookup[s[i]] = (lookup[s[i]] || 0) + 1;
}
for(let i = 0; i < t.length; i++) {
if(!lookup[t[i]]) return false
else lookup[t[i]] -= 1;
}
return true;
};