刷题日记05-有效的字母异位词(排序)
有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t中每个字符出现的次数都相同,则称 s 和 t互为字母异位词。
示例 1:
输入: s = "anagram", t = "nagaram" 输出: true
示例 2:
输入: s = "rat", t = "car" 输出: false
思路:首先两个字符串是异位词的前提是两个字符串的长度相同,要是不同肯定就不是异位词,所以这是前提。然后对字符串进行排序,现将字符串转换成字符数组,再用Arrays.sort()对字符数组进行排序,如果是异位词那排序好了之后两个数组肯定是相同的。排序好了之后,进行遍历,如果两个字符数组在同一位置上的元素不相同,就说明不是异位词。代码如下:
class Solution {
public boolean isAnagram(String s, String t) {
//对字符串进行排序
char[] chars1 = s.toCharArray();
char[] chars2 = t.toCharArray();
Arrays.sort(chars1);
Arrays.sort(chars2);
//进行判断,如果数组长度不同直接返回false
if (chars1.length != chars2.length){
return false;
}
//遍历字符串数组
for (int i = 0; i < chars1.length; i++) {
if(chars1[i] != chars2[i]){
return false;
}
}
return true;
}
}
#如何看待2023届秋招##你的秋招进展怎么样了##0offer是寒冬太冷还是我太菜##我的求职思考#


