Leetcode 242. Valid Anagram
阿新 • • 發佈:2018-12-15
文章作者:Tyan 部落格:noahsnail.com | CSDN | 簡書
1. Description
2. Solution
- Version 1
class Solution {
public:
bool isAnagram(string s, string t) {
sort(s.begin(), s.end());
sort(t.begin(), t.end());
return s == t;
}
};
- Version 2
class Solution { public: bool isAnagram(string s, string t) { if(s.size() != t.size()) { return false; } map<char, int> m; for(int i = 0; i < s.size(); i++) { m[s[i]]++; } for(int i = 0; i < t.size(); i++) { m[t[i]]--; if(m[t[i]] < 0) { return false; } } for(auto iter : m) { if(iter.second != 0) { return false; } } return true; } };
- Version 3
class Solution { public: bool isAnagram(string s, string t) { if(s.size() != t.size()) { return false; } vector<int> alpha(26); for(char ch : s) { alpha[ch - 'a']++; } for(char ch : t) { alpha[ch - 'a']--; } for(int x : alpha) { if(x != 0) { return false; } } return true; } };