一、 题目链接
有效的字母异位词
二、题目描述
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例 1: 输入: s = "anagram", t = "nagaram" 输出: true
示例 2: 输入: s = "rat", t = "car" 输出: false
说明: 你可以假设字符串只包含小写字母。
三、思路分析
首先将字符串转化为字符数组,设置一个整型数组的大小为26(由于英文字母的个数为26个),初始化数组均0,遍历字符串s中的每个字符,将每个字符出现的次数添加到整型数组中,然后再遍历字符串t的每一个字符,减去数组中字符出现的次数,遍历结束后,如果整型数组元素均是0,表示是字母异位词,反之不是。
四、核心实现代码
class Solution {
public boolean isAnagram(String s, String t) {
//创建一个长度为26的整型数组record(记录字母出现次数)
int []record= new int[26];
for(char i:s.toCharArray()){
record[i-'a']+=1;
}
for(char j:t.toCharArray()){
record[j-'a']-=1;
}
//循环遍历数组进行判断
for(int k:record){
if(k!=0){
return false;
}
}
return true;
}
}
补充: