Given two strings s and t, write a function to determine if t is an anagram of s.
For example,
s = "anagram", t = "nagaram", return true.
s = "rat", t = "car", return false.
Note:
You may assume the string contains only lowercase alphabets.
判断两个字符串中是否使用相同的字符
class Solution {
public:
bool isAnagram(string s, string t) {
if (s.size() != t.size()) return false;
int bit[26] = {0}, len = s.length();
for(int i=0; i<len; i++)
bit[s[i]-'a']++;
for(int i=0; i<len; i++)
if(--bit[t[i]-'a'] < 0)
return false;
return true;
}
};
更简单的:
public class Solution {
public boolean isAnagram(String s, String t) {
char[] sArr = s.toCharArray();
char[] tArr = t.toCharArray();
Arrays.sort(sArr);
Arrays.sort(tArr);
return String.valueOf(sArr).equals(String.valueOf(tArr));
}
}