Data Structures & Algorithms View on GitHub โ†—

Is Anagram

Java

class Solution {
    public boolean isAnagram(String s, String t) {

        if(s.length() != t.length()) return false;

        int[] arr = new int[26];

        for(char c : s.toCharArray()){
            arr[c - 'a']++;
        }

        for(char c : t.toCharArray()){
            arr[c - 'a']--;
            if(arr[c - 'a'] < 0) return false;
        }



        return true;
    }
}

Python

class Solution:
    def isAnagram(self, s: str, t: str) -> bool:
        if len(s) != len(t):
            return False
        
        map = {}

        for i in range(len(s)):
            if s[i] not in map:
                map[s[i]] = 1
            else: 
                map[s[i]] += 1

            if t[i] not in map:
                map[t[i]] = -1
            else: 
                map[t[i]] -= 1
            
        
        for v in map.values():
            print(v)
            if v != 0:
                return False


            
            


        return True

Enjoyed this solution?

I write about software engineering, algorithms, and lessons learned. Check out more in the newsletter.

Browse the newsletter