Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,895 questions

51,826 answers

573 users

How to make two strings anagram by removing characters in JavaScript

1 Answer

0 votes
function RemoveCharactersNeedToBeRemovedForAnagram(str1, str2) {
    const TotalABCLetters = 26;
    let count1 = Array(TotalABCLetters).fill(0);
    let count2 = Array(TotalABCLetters).fill(0);
    const size1 = str1.length;
    const size2 = str2.length;

    // count char frequency str1
    for (let i = 0; i < size1; i++) {
        count1[str1.charAt(i).charCodeAt(0) - 'a'.charCodeAt(0)]++;
    }
          
    // count char frequency str2
    for (let i = 0; i < size2; i++) {
        count2[str2.charAt(i).charCodeAt(0) - 'a'.charCodeAt(0)]++;
    }
          
    for (let i = 0; i < TotalABCLetters; i++) {
        if (Math.abs(count1[i] - count2[i]) != 0) {
            str1 = str1.replaceAll(String.fromCharCode(i + 97), ""); // 'a' = 97 ascii
            str2 = str2.replaceAll(String.fromCharCode(i + 97), "");
        }
    }
    
    const arr = [str1, str2];
    
    return arr;
}
 
const str1 = "masterfx";
const str2 = "ksampret";
         
let [s1, s2] = RemoveCharactersNeedToBeRemovedForAnagram(str1, str2);

console.log(s1);
console.log(s2);
 
 
 
 
/*
run:
 
master
samret
 
*/

 



answered Oct 1, 2022 by avibootz

Related questions

1 answer 103 views
1 answer 127 views
1 answer 129 views
1 answer 101 views
1 answer 104 views
1 answer 145 views
...