242. 有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
//用的是HashMap这个数据结构,和之前的那个数组中重复元素比较类似,不用这个的话,直接用散列表来看一下效果怎么样
class Solution {
public boolean isAnagram(String s, String t) {
if(s.length()!=t.length())
return false;
Map<Character,Integer> map=new HashMap<Character,Integer>();
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))&&map.get(t.charAt(i))>0)
map.put(t.charAt(i),map.get(t.charAt(i))-1);
else
return false;
}
return true;
}
}
class Solution {
public boolean isAnagram(String s, String t) {
if(s.length()!=t.length())
return false;
int[] arr=new int[26];
for(int i=0;i<s.length();i++)
arr[s.charAt(i)-'a']++;
for(int i=0;i<t.length();i++)
arr[t.charAt(i)-'a']--;
for(int i=0;i<26;i++)
if(arr[i]!=0)
return false;
return true;
}
}