(LeetCode 面试经典 150 题 ) 242. 有效的字母异位词 (哈希表)
题目:242. 有效的字母异位词
思路:哈希表,时间复杂度0(n)。
C++版本:
class Solution {
public:bool isAnagram(string s, string t) {if(s.size()!=t.size()) return false;int mp[26]={0};for(auto x:s){mp[x-'a']++;}for(auto x:t){mp[x-'a']--;}for(int i=0;i<26;i++){if(mp[i]!=0) return false;}return true;}
};
JAVA版本:
class Solution {public boolean isAnagram(String s, String t) {if(s.length()!=t.length()) return false;int[] mp=new int[26];for(var x:s.toCharArray()){mp[x-'a']++;}for(var x:t.toCharArray()){mp[x-'a']--;}for(int i=0;i<26;i++){if(mp[i]!=0) return false;}return true;}
}
GO版本:
func isAnagram(s string, t string) bool {if len(s)!=len(t) {return false}mp:=make([]int,26)for i,x:=range s {mp[x-'a']++mp[t[i]-'a']--}for i:=0;i<26;i++ {if mp[i]!=0 {return false}}return true
}