>有效的字母异位词<
给定两个字符串 s
和 t
,编写一个函数来判断 t
是否是 s
的字母异位词。
说明:
1.若s
和t
中每个字符出现的次数都相同,则称s
和t
互为字母异位词。
//提示
1. 1 <= s.length, t.length <= 5 * 104
2. s 和 t 仅包含小写字母
实例1:
输入: s = "anagram", t = "nagaram"
输出: true
实例2:
输入: s = "rat", t = "car"
输出: false
一、解题思路
1、解法一( Java )
解法思路:比较异位词,即利用 length()
方法比较两字符串是否包括个数相同的字母,可先利用 toCharArray()
方法转化为字符数组并通过 sort()
进行排序,然后再转化为字符串利用 equals()
方法比较值是否相等。
代码如下:
class Solution {
public boolean isAnagram(String s, String t) {
if(s.length()!=t.length())
//比较字符串长度
return false;
char [] ss = s.toCharArray();
char [] tt = t.toCharArray();
//toCharArray()方法将字符串转换为字符数组。
Arrays.sort(ss);
Arrays.sort(tt);
//使用sort()方法对Java数组进行排序
s = new String(ss);
t = new String(tt);
if(s.equals(t))
//equals() 方法用于判断 Number 对象与方法的参数进是否相等
//当Number对象不为Null,且与方法的参数类型与数值都相等返回 True,否则返回 False
return true;
return false;
}
}
运行结果截图如下: