题目
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1:
1 2
| 输入: s = "anagram", t = "nagaram" 输出: true
|
示例 2:
1 2
| 输入: s = "rat", t = "car" 输出: false
|
说明:
你可以假设字符串只包含小写字母。
进阶:
如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?
Related Topics
排序
哈希表
解答
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
import java.util.HashMap; import java.util.Map;
class Solution { public boolean isAnagram(String s, String t) { if(s.length() != t.length()) return false; int[] flag = new int[26]; for(int i = 0; i< s.length(); i++) { flag[s.charAt(i) - 'a'] ++; flag[t.charAt(i) - 'a'] --; } for(int i=0;i<26;i++) if(flag[i] != 0) return false; return true; }
}
|