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.
Follow up:What if the inputs contain unicode characters? How would you adapt your solution to such case?
class Solution {
public:
bool isAnagram(string s, string t) {
int buffer[26] = {0};
for(int i=0;i<s.size();i++)
buffer[s[i]-'a'] += 1;
for(int i=0;i<t.size();i++)
buffer[t[i]-'a'] -= 1;
for(int i=0;i<26;i++)
if(buffer[i] != 0)
return false;
return true;
}
};
Follow up: Try map<wchar, int>