Leetcode——242. Valid Anagram
来源:互联网 发布:凡科微传单 软件下载 编辑:程序博客网 时间:2024/05/18 16:56
题目
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?
解答
Anagram:n. 相同字母异序词,易位构词,变位词
My AC code
class Solution {//unordered_map<char,int>hash or int array[256]public: bool isAnagram(string s, string t) { int m1[256]={-1},m2[256]={-1}; if(s.length()!=t.length()) return false; for(int i=0;i<s.length();i++) { m1[s[i]]++; m2[t[i]]++; } for(int i=0;i<256;i++) if(m1[i]!=m2[i]) return false; return true; }};
Discuss AC code
hash method
class Solution {public: bool isAnagram(string s, string t) { if (s.length() != t.length()) return false; int n = s.length(); unordered_map<char, int> counts; for (int i = 0; i < n; i++) { counts[s[i]]++; counts[t[i]]--; } for (auto count : counts) if (count.second) return false; return true; }};
the improvement of my method
class Solution {public: bool isAnagram(string s, string t) { if (s.length() != t.length()) return false; int n = s.length(); int counts[26] = {0}; for (int i = 0; i < n; i++) { counts[s[i] - 'a']++; counts[t[i] - 'a']--; } for (int i = 0; i < 26; i++) if (counts[i]) return false; return true; }};
Another method
sorting
class Solution {public: bool isAnagram(string s, string t) { sort(s.begin(), s.end()); sort(t.begin(), t.end()); return s == t; }};
0 0
- Leetcode——242. Valid Anagram
- [leetcode] 242.Valid Anagram
- leetcode 242. Valid Anagram
- [leetcode] 242. Valid Anagram
- leetCode 242. Valid Anagram
- Leetcode 242. Valid Anagram
- 242. Valid Anagram LeetCode
- LeetCode 242. Valid Anagram
- LeetCode 242. Valid Anagram
- [LeetCode]242. Valid Anagram
- 【LeetCode】242. Valid Anagram
- leetcode 242. Valid Anagram
- leetcode 242. Valid Anagram
- LeetCode--242. Valid Anagram
- LeetCode *** 242. Valid Anagram
- #leetcode#242. Valid Anagram
- leetcode 242. Valid Anagram
- LeetCode 242. Valid Anagram
- sklearn classification_report 输出说明
- python解释器实现及其嵌入式应用:解释器移植
- 如何使用Design Support Library提供的FloatingActionButton
- 国家自然科学基金成果填写经验
- 安卓开发常见编译错误
- Leetcode——242. Valid Anagram
- java.lang.OutOfMemoryError: PermGen space
- eclipse 使用maven 构建web项目 简单例子
- Hystrix的使用(一)
- opencv摄像头用法
- Ubuntu 14.04 Server 安装VMware Workstation 12 Pro
- 将软键盘变成搜索
- Android中JNI编程的那些事儿
- 使用getopt命令解析shell脚本的命令行选项