力扣哈希表
力扣当中有关哈希表的题
llyLLY666
这个作者很懒,什么都没留下…
展开
-
力扣383赎金信
思路:这道题是一个更为典型的哈希法,就是判断一个单词里的字母是不是在另外一个单词里面出现过。鉴于字母的个数有限,只有26个字母。我们采用数组作为我们的哈希表。我们初始化我们的hash[26]={0};用单词一来对哈希表初始化,hash[s1[i]-'a']++;用单词二来检验哈希表,在本题当中需要注意,单词一和单词二中都出现过的字母才会在单词二的过程中检验哈希表,也就是hash[s2[i]-'a']--;但是只出现过在单词二的单词就不用检验哈希表了。这点考虑到之后就没有问题了。原创 2024-09-03 21:23:32 · 238 阅读 · 0 评论 -
力扣349,两个数组的交集
思路:这道题利用哈希表即可解决,因为他要看nums1里面的元素是否在nums2里面出现过,那么我们常说,判断元素是否在集合里面出现过,用的都是哈希表。考虑到这道题主要看的是数字出现过没有,不能用数组,用unordered_set ,不用set的原因是因为集合里面可以有重复的元素,那么就不能用set。我们先构造哈希表并用nums1初始化,unordered_set<int> hash(nums1.begin(),nums1.end());存在的话就直接放到ret当中,自动过滤重复的元素。原创 2024-09-02 15:29:28 · 206 阅读 · 0 评论 -
力扣202 快乐数
哈希法原创 2024-09-03 21:18:27 · 226 阅读 · 0 评论