有效的字母异位词

128 阅读1分钟

有效的字母异位词

242 有效的字母异位词

class Solution {
    public boolean isAnagram(String s, String t) {
        char[] sarray = s.toCharArray();
        char[] tarray = t.toCharArray();
         //hash结构思想
        //初始化26个小写字母数组,记录每个小写字母的个数
        int[] record = new int[26];

        //记录s中对应字符的个数,并在相应位置加1
        for(int i = 0; i < sarray.length; i++) {
            record[sarray[i] - 'a']++;
        }

        ////记录t中对应字符的个数,并在相应位置减1
        for(int j = 0; j < tarray.length; j++) {
            record[tarray[j] - 'a']--;
        }

        //如果26个字母对应位置上的元素均为0,则说明s和t每个字符出现的次数相同
        for(int k = 0; k < record.length; k++) {
            if (record[k] != 0) {
                return false;
            }
        }

        return true;
    }
}