【刷题日记】哈希表-有效的字母异位词-L242-Easy
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
思路
- 建立哈希表,保存每个字符出现的次数。s 中的字母出现则增加,t 中的字母出现则减少。如果最后哈希表中刚好都为 0,则满足条件。
学习点
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| class Solution { public: bool isAnagram(string s, string t) { if (s.length() != t.length()) { return false; } int char_count[26] = {0}; for (int i = 0; i < s.length(); ++i) { char_count[s[i] - 'a'] += 1; } for (int i = 0; i < t.length(); ++i) { char_count[t[i] - 'a'] -= 1; } for (int i = 0; i < 26; ++i) { if (char_count[i]) { return false; } } return true; } };
|