Ac solution code


  • 0

    The basic idea is derived from counting sort.

    Time complexity = O(n) : O(n + 26) = O(n)

    public boolean isAnagram(String s, String t) {
    	if (s == null || t == null || s.length() != t.length()) return false;
    	int count[] = new int[26];
    	for (int i = 0; i < s.length(); i++) {
    		count[s.charAt(i)-'a']++;
    		count[t.charAt(i)-'a']--;    		
    	}
    	for (int i = 0; i < 26; i++) 
    		if (count[i] != 0) 
    			return false;
    	return true;		
    }

Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.