力扣 242. 有效的字母异位词

题目说明

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。

注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

  • 提示:
    • 1 <= s.length, t.length <= 5 * 10^4
    • st 仅包含小写字母

示例

示例 1:

1
2
输入: s = "anagram", t = "nagaram"
输出: true

示例 2:

1
2
输入: s = "rat", t = "car"
输出: false

笔者理解

此题是一道字符串算法问题,在力扣题库中被定义为简单题。

解法

当笔者阅读完此题后,直接将字符串转化为字符数组然后排序比较,让我们来看看具体如何实现的吧。

实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Solution {
/*
* 数组
*/
public boolean isAnagram(String s, String t) {
// 将字符串转化成字符数组然后比较
char[] sChar = s.toCharArray();
char[] tChar = t.toCharArray();

Arrays.sort(sChar);
Arrays.sort(tChar);

return Arrays.equals(sChar, tChar);
}
}

时间和空间效率还行,可见此解法还比较适合此题。

image-20210905213006399

总结

本题是今天的一题,难度是为简单,感兴趣的朋友都可以去尝试一下,此题还有其他更多的解法,朋友们可以自己逐一尝试。