leetcode242:有效的字母异位词
有效的字母异位词
给定两个字符串 *s*
和 *t*
,编写一个函数来判断 *t*
是否是 *s*
的字母异位词。
**注意:**若 *s*
和 *t*
中每个字符出现的次数都相同,则称 *s*
和 *t*
互为字母异位词。
public boolean isAnagram(String s, String t) {HashMap<Character,Integer> map = new HashMap<>();for (int i = 0; i < s.length(); i++) {if(map.containsKey(s.charAt(i))){map.put(s.charAt(i),map.get(s.charAt(i))+1);}else{map.put(s.charAt(i),1);}}for (int i = 0; i < t.length(); i++) {if(map.containsKey(t.charAt(i))){Integer res = map.put(t.charAt(i), map.get(t.charAt(i)) - 1);if(res == 1){map.remove(t.charAt(i));}}else{return false;}}if(map.isEmpty()){return true;}return false;}
hashmap法,正常应该用数组实现即可