leetcode 242. Valid Anagram

来源:互联网 发布:instasize 相机软件 编辑:程序博客网 时间:2024/06/03 08:53

242. Valid Anagram

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)     {        //way-1        /*        sort(s.begin(), s.end());        sort(t.begin(), t.end());        return s == t;           */                //way-2        if(s.size() != t.size())            return false;        map<char,int> mm;        for(int i = 0; i < s.size(); i++)            mm[s[i]]++;        for(int i = 0; i < t.size(); i++)        {            auto it = mm.find(t[i]);            if(it == mm.end())                return false;            mm[t[i]]--;            if (mm[t[i]] == 0)                mm.erase(it);        }        return mm.size() == 0;    }};


原创粉丝点击