Strings: Making Anagrams

  • + 0 comments

    JAVASCRIPT solution

    function makeAnagram(a, b) {
      const [small, big] = a.length < b.length ? [a, b] : [b, a];
      const map = new Map();
      for (let c of small) {
        map.set(c, (map.get(c) ?? 0) + 1);
      }
    
      let remain = 0;
      for (let c of big) {
        !map.has(c) ? remain++ : map.set(c, map.get(c) - 1);
      }
    
      for (let [k, v] of map) {
        remain += v < 0 ? v * -1 : v;
      }
    
      return remain;
    }