哈希表
点解质
这个作者很懒,什么都没留下…
展开
-
LeetCode哈希表类题目总结,持续更新中
1 两数之和 217 存在重复元素 219 存在重复元素II 242 有效的字母异位词 268 丢失的数字 349 两个数组的交集 350 两个数组的交集II 383 赎金信 387 字符串中的第一个唯一字符 448 找到所有数组中消失的数字 ...原创 2021-09-12 20:09:15 · 143 阅读 · 0 评论 -
LeetCode 205:同构字符串
给定两个字符串s和t,判断它们是否是同构的。如果s中的字符可以按某种映射关系替换得到t,那么这两个字符串是同构的。每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。建立两个哈希表,一个存储从s到t的映射,一个存储从t到s的映射。class Solution {public: bool isIsomorphic(const string& s, const str...原创 2021-09-12 22:55:13 · 79 阅读 · 0 评论 -
LeetCode 217:存在重复元素
给定一个整数数组,判断是否存在重复元素。如果存在一值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。建立一个哈希表,存储已经遍历过数组中的元素。class Solution {public: bool containsDuplicate(const vector<int>& nums) { unordered_set<int> visited_nums; for (const aut原创 2021-09-11 15:21:54 · 85 阅读 · 0 评论 -
LeetCode 219:存在重复元素II
给定一个整数数组和一个整数k,判断数组中是否存在两个不同的索引i和j,使得nums [i] = nums [j],并且i和j的差的绝对值至多为k。建立一个哈希表,索引为已经遍历的数字,值为数字在数组中的序列号。class Solution {public: bool containsNearbyDuplicate(const vector<int>& nums, const int& k) { unordered_map<int, siz原创 2021-09-11 16:57:28 · 80 阅读 · 0 评论 -
LeetCode 242:有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。注意:若s 和 t中每个字符出现的次数都相同,则称s 和 t互为字母异位词。建立一个哈希表,索引为字母,值为字母出现的次数。class Solution {public: bool isAnagram(const string& s, const string& t) { if (s.length() != t.length()) { ret...原创 2021-09-12 19:27:37 · 89 阅读 · 0 评论 -
LeetCode 383:赎金信
给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成。如果可以构成,返回 true ;否则返回 false。(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。杂志字符串中的每个字符只能在赎金信字符串中使用一次。)建立一个哈希表,索引为字母,值为字母出现的次数。class Solution {public: bool canConstruc原创 2021-09-12 19:21:22 · 137 阅读 · 0 评论 -
LeetCode 387:字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。建立一个哈希表,索引为字母,如果字母没有出现,值为-2;如果字母出现多次,值为-1;如果字母只出现一次,值为出现的位置。class Solution {public: int firstUniqChar(const string& s) { vector<int> first_indices(26, -2); for (size_t i = 0; i原创 2021-09-12 19:55:50 · 73 阅读 · 0 评论 -
LeetCode 771:宝石与石头
给定字符串J代表石头中宝石的类型,和字符串S代表你拥有的石头。S中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J中的字母不重复,J和S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。建立一个哈希表,索引为可能是宝石的字母,值为该字母是否为宝石。class Solution {public: int numJewelsInStones(string jewels, string stones) { v...原创 2021-09-12 21:44:23 · 76 阅读 · 0 评论 -
LeetCode 268:丢失的数字
给定一个包含[0, n]中n个数的数组nums,找出[0, n]这个范围内没有出现在数组中的那个数。建立一个哈希表,索引依此为可能出现的数字,值为该数字是否出现。class Solution {public: int missingNumber(const vector<int>& nums) { size_t n = nums.size(); vector<bool> are_visited(n + 1, ...原创 2021-09-11 17:32:47 · 155 阅读 · 0 评论 -
LeetCode 389:找不同
给定两个字符串s和t,它们只包含小写字母。字符串t由字符串s随机重排,然后在随机位置添加一个字母。请找出在t中被添加的字母。建立一个哈希表,索引依次为可能出现的字母,值为该字母出现的次数。class Solution {public: char findTheDifference(const string& s, const string& t) { vector<size_t> letter_times(26); ...原创 2021-09-13 22:28:33 · 66 阅读 · 0 评论 -
LeetCode 448:找到所有数组中消失的数字
给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。建立一个哈希表,索引依此为可能出现的数字,值为该数字是否出现。class Solution {public: vector<int> findDisappearedNumbers(const vector<int>& nums) { size_t n = nu原创 2021-09-11 17:39:58 · 78 阅读 · 0 评论 -
LeetCode 645:错误的集合
集合 s 包含从 1 到n的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。给定一个数组 nums 代表了集合 S 发生错误后的结果。请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。建立一个哈希表,索引依次为可能出现的数字,值为该数字出现的次数。class Solution {public: vector<int> findErrorNums(const ..原创 2021-09-12 22:05:15 · 132 阅读 · 0 评论 -
LeetCode 349:两个数组的交集
给定两个数组,编写一个函数来计算它们的交集。建立一个哈希表,存储已经遍历过数组中的元素。class Solution {public: vector<int> intersection(const vector<int>& nums1, const vector<int>& nums2) { if (nums1.size() > nums2.size()) { return intersec原创 2021-09-11 18:01:19 · 62 阅读 · 0 评论 -
LeetCode 350:两个数组的交集II
给定两个数组,编写一个函数来计算它们的交集。建立一个哈希表,索引为已经遍历的数字,值为数字出现的次数。class Solution {public: vector<int> intersect(const vector<int>& nums1, const vector<int>& nums2) { if (nums1.size() > nums2.size()) { return inte原创 2021-09-11 21:45:49 · 76 阅读 · 0 评论 -
LeetCode 884:两句话中的不常见单词
给定两个句子A和B。(句子是一串由空格分隔的单词。每个单词仅由小写字母组成。)如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的。返回所有不常用单词的列表。您可以按任何顺序返回列表。建立一个哈希表,索引为出现的单词,值为该单词是否出现的次数。class Solution {public: vector<string> uncommonFromSentences(const string& s1, const...原创 2021-09-13 23:41:59 · 76 阅读 · 0 评论