标签:
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.
Solution 1: #include<algorithm>,排序再比较
1 class Solution { 2 public: 3 bool isAnagram(string s, string t) { //runtime:76ms 4 sort(s.begin(),s.end()); 5 sort(t.begin(),t.end()); 6 return s==t; 7 } 8 };
Solution 2:计数
1 class Solution { 2 public: 3 bool isAnagram(string s, string t) { //runtime:12ms 4 vector<int> count(26,0); 5 for(int i=0;i<s.size();i++) 6 count[s[i]-‘a‘]++; 7 for(int i=0;i<t.size();i++) 8 count[t[i]-‘a‘]--; 9 for(int i=0;i<26;i++) 10 if(count[i]!=0) 11 return false; 12 return true; 13 } 14 };
标签:
原文地址:http://www.cnblogs.com/irun/p/4695695.html