[LeetCode] Problem 242 - Valid Anagram

Given two strings s and t , write a function to determine if t is an anagram of s.

Example

No.1

Input: s = “anagram”, t = “nagaram”

Output: true

No.2

Input: s = “rat”, t = “car”

Output: false

Note

You may assume the string contains only lowercase alphabets.

Follow up

What if the inputs contain unicode characters? How would you adapt your solution to such case?

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public boolean isAnagram(String s, String t) {
if (s.length() != t.length())
return false;

int[] array = new int[26];

for (char ch : s.toCharArray())
array[ch - 'a']++;

for (char ch : t.toCharArray()) {
array[ch - 'a']--;

if (array[ch - 'a'] < 0)
return false;
}

return true;
}