Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Anagram function does not consider string length #27

Open
rezasohrabi opened this issue May 3, 2024 · 0 comments
Open

Anagram function does not consider string length #27

rezasohrabi opened this issue May 3, 2024 · 0 comments

Comments

@rezasohrabi
Copy link

The current implementation of the validAnagrams function in the repository does not consider the length of the input strings when determining if they are anagrams. For example, it expects to return false but returns true in cases like validAnagrams("abcd", "abcde")

function validAnagrams(str1, str2) {
  const freqCount1 = str1.split('').reduce((acc, char) => {
    acc[char] = (acc[char] || 0) + 1;
    return acc;
  }, {});

  const freqCount2 = str2.split('').reduce((acc, char) => {
    acc[char] = (acc[char] || 0) + 1;
    return acc;
  }, {});

  return Object.keys(freqCount1).every(
    (char) => freqCount1[char] === freqCount2[char]
  );
}

This function also needs to check the length of strings to be equal at the beginning:

 if (str1.length !== str2.length) {
        return false;
    }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant