美文网首页
Leetcode-242:有效的字母异位词

Leetcode-242:有效的字母异位词

作者: 小北觅 | 来源:发表于2019-04-27 08:23 被阅读0次

    题目描述:
    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。

    思路:
    使用hash表记录每个字符出现的次数,最后比较两个hash表里entry是否完全一致。
    Hash表可以使用HashMap,或者自己定义数组。

    class Solution {
        public boolean isAnagram(String s, String t) {
            Map<Character, Integer> map = new HashMap<>();
            for (char ch : s.toCharArray()) {
                map.put(ch, map.getOrDefault(ch, 0) + 1);
            }
            for (char ch : t.toCharArray()) {
                Integer count = map.get(ch);
                if (count == null) {
                    return false;
                } else if (count > 1) {
                    map.put(ch, count - 1);
                } else {
                    map.remove(ch);
                }
            }
            return map.isEmpty();
        }
    }
    

    相关文章

      网友评论

          本文标题:Leetcode-242:有效的字母异位词

          本文链接:https://www.haomeiwen.com/subject/hulhnqtx.html