242. Valid Anagram

🟩 Easy

Given two strings s and t, return true if t is an anagram of s, and false otherwise.

An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.

Example 1

Input: s = "anagram", t = "nagaram" Output: true

Example 2

Input: s = "rat", t = "car" Output: false

Constraints

  • 1 <= s.length, t.length <= 5 * 10^4

  • s and t consist of lowercase English letters.

Follow up: What if the inputs contain Unicode characters? How would you adapt your solution to such a case?

Solution

My Solution

func isAnagram(s string, t string) bool {
    if len(s) != len(t) {
        return false
    }

    nums := [26]int{}

    for i := range s {
        nums[s[i] - 'a']++
        nums[t[i] - 'a']--
    }

    for _, num := range nums {
        if num != 0 {
            return false
        }
    }

    return true
}
result

Leetcode: link

Last updated

Was this helpful?