有效的字母异位词
题目:
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1:
输入: s = “anagram”, t = “nagaram”
输出: true
示例 2:
输入: s = “rat”, t = “car”
输出: false
解题思路:和字符串中的第一个唯一字符思路类似,先遍历s记录他的字符个数,再比对t,当t中出现的字符在s中没有出现或者次数用尽时说明t和s出现的字符不同
class Solution {
public boolean isAnagram(String s, String t) {
if(s == null || t == null)
return false;
if(s.length() != t.length())
return false;
int len = s.length();
char ch_s[] = s.toCharArray();
int arr[] = new int[26];
for(char c : ch_s) {
arr[c - 'a']++;
}
for(int i = 0; i < len; i++) {
char c = t.charAt(i);
if(arr[c - 'a'] == 0)
return false;
arr[c - 'a']--;
}
return true;
}
}