一 题目:
二 思路:
- 题目交代字母由小写字母组成,即26以内
- 字母异位词即长度相同,各个字母个数相同
- 定义一个int类型的数组,x-'a'为各个字母下标,只要t里字母a都有即可
三 代码:
public boolean isAnagram(String s, String t) {
if (s==null|| t==null||s.length()!=t.length()){
return false;
}
int[] chars26 = new int[26];
for (char c : s.toCharArray()) {
chars26[c-'a']+=1;
}
for (char c : t.toCharArray()) {
chars26[c-'a']-=1;
if (chars26[c-'a']<0){
return false;
}
}
return true;
}