给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1: 输入: s = "anagram", t = "nagaram" 输出: true
示例 2: 输入: s = "rat", t = "car" 输出: false
假设字符串只包含小写字母。
public boolean isAnagram(String s,String t){
//新建一个数组记录每个字符出现次数
int [] record = new int [26];
//遍历字符串,如果字符出现一次,出现值加一
for (char c:s.toCharArray()) {
record[c-'a']+=1;
}
for (char c:t.toCharArray()) {
record[c-'a']-=1;
}
//如果数组中的每个值都为0,那么两个字符串就是字母异位词
for (int x:record) {
if (x!=0){
return false;
}
}
return true;
}
public static void main(String[] args) {
String s = "faker";
String t = "kafer";
Youxuaidezunyyiweici youxuaidezunyyiweici = new Youxuaidezunyyiweici();
boolean b = youxuaidezunyyiweici.isAnagram(s,t);
System.out.println(b);
}
输出结果:
True
该博客介绍了一个Java方法,用于判断两个字符串是否为字母异位词。通过创建一个计数数组记录每个字符出现的次数,遍历两个字符串并相应增加或减少计数,最后检查所有计数值是否为0来确定它们是否互为字母异位词。示例代码展示了如何应用这种方法解决给定问题。
1202

被折叠的 条评论
为什么被折叠?



