Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * I'm writing the function in C++ assuming ASCII character set:
- */
- // Method 1 : O(n lg(n)) :
- bool checkAnagrams(std::string s1, std::string s2) {
- std::sort(s1.begin(), s1.end());
- std::sort(s2.begin(), s2.end());
- return s1 == s2;
- }
- // Method 2 O(N) :
- bool checkAnagrams(std::string s1, std::string s2) {
- std::vector<int> freq1(128, 0), freq2(128, 0);
- for(int i = 0; i < s1.length(); i++) {
- freq1[s1[i]]++;
- }
- for(int i = 0; i < s2.length(); i++) {
- freq[s2[i]]++;
- }
- // compare both frequencies :
- for(int i = 0; i < 128; i++) {
- if(freq1[i] != freq2[i])
- return false;
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement