leetcode 242有效的字母异位词
题意就是判断两个字符串中的字符是否是相同且位置发生变化的,自己的思路是建立一个哈希表,遍历第一个字符串并将元素填入哈希表中,之后遍历第二个字符串,对每一个字符,如果该字符对应的哈希表中的值为0,则代表两个字符串中某一字符的数目并不相同,于是返回false,如果全部完成判断之后,就代表两个字符串对于的字符都相同,返回true。贴代码
class Solution { public: bool isAnagram(string s, string t) { if(s.length()!=t.length()) return false; unordered_map<char,int> good; for(int i = 0 ; i < s.length() ; i++) { good[s[i]]++; } for(int i = 0 ; i < t.length() ; i++) { if(good[t[i]] == 0) return false; else good[t[i]]--; } return true; } };

浙公网安备 33010602011771号