[leetcode]242. Valid Anagram判断两个字符串是不是包含相同字符的重排列

/*
        思路是判断26个字符在两个字符串中出现的次数是不是都一样,如果一样就返回true。
        记住这个方法
         */
        if (s.length()!=t.length())
            return false;
        int[] words = new int[26];
        for (int i = 0; i < s.length(); i++) {
            words[s.charAt(i)-'a']++;
            words[t.charAt(i)-'a']--;
        }
        for (int i = 0; i < 26; i++) {
            if (words[i]!=0)
                return false;
        }
        return true;

记住这种判断两个字符是不是重排列的方法,就是判断26个字母是不是出现次数相同。

当与字符相关问题是,要记得考虑26字母hashtable

posted @ 2018-01-15 17:19  stAr_1  阅读(127)  评论(0编辑  收藏  举报