写出一个函数 anagram(s, t)
判断两个字符串是否可以通过改变字母的顺序变成一样的字符串。
给出 s = "abcd"
,t="dcab"
,返回 true
.
给出 s = "ab"
, t = "ab"
, 返回 true
.
给出 s = "ab"
, t = “ac"
, 返回 false
.
public class Solution {
/**
* @param s: The first string
* @param b: The second string
* @return true or false
*/
public boolean anagram(String s, String t) {
//转为字符数组以便使用Arrays.sort方法
char[] arr1 = s.toCharArray();
char[] arr2 = t.toCharArray();
//对转换后的字符数组进行按a-z的顺序进行排序
Arrays.sort(arr1);
Arrays.sort(arr2);
//排序完成后,再转回字符串,然后用equals方法进行比较是否为变位词
if(String.copyValueOf(arr1).equals(String.copyValueOf(arr2)))
return true;
else
return false;
}
};
本题目来自LintCode : 两个字符串是变位词