public static boolean isAna(String a, String b) {
if (a.length() != b.length()) return false;
int[] cnt = new int[26];
for (char c : a.toCharArray()) cnt[c - 'a']++;
for (char c : b.toCharArray()) cnt[c - 'a']--;
for (int x : cnt) if (x != 0) return false;
return true;
}
// call: isAna("abc", "bca")What does it return?
- Acheck_circle
true
- B
0
- C
false
- D
exception
Explanation
The counter array nets zero everywhere, indicating an anagram.