原题链接
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1:
输入: s = “anagram”, t = “nagaram”
输出: true
示例 2:
输入: s = “rat”, t = “car”
输出: false
说明:
你可以假设字符串只包含小写字母。
代码1:
class Solution { public boolean isAnagram(String s, String t) { int[] ss=new int[26]; int[] ts=new int[26]; for(int i=0;i<s.length();i++){ ss[s.charAt(i)-'a']++; } for(int i=0;i<t.length();i++){ ts[t.charAt(i)-'a']++; } for(int i=0;i<26;i++){ if(ss[i]!=ts[i]){ return false; } } return true; } }
代码2:
class Solution { public boolean isAnagram(String s, String t) { if(s.length()!=t.length()){ return false; } int[] hash=new int[26]; for(int i=0;i<s.length();i++){ hash[s.charAt(i)-'a']++; hash[t.charAt(i)-'a']--; } for(int i=0;i<26;i++){ if(hash[i]!=0){ return false; } } return true; } }