![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
哈希表
leetcode题目分类--哈希表
m0_38142029
这个作者很懒,什么都没留下…
展开
-
[哈希表] 299. 猜数字游戏(三次遍历+两个Map → 两次遍历+两个数组 → 一次遍历+一个数组)
[哈希表] 299. 猜数字游戏(三次遍历+两个Map → 两次遍历+两个数组 → 一次遍历+一个数组)299. 猜数字游戏题目分析思路1:三次遍历 + 两个哈希表思路2:两次遍历 + 两个数组思路3:一次遍历 + 一个数组299. 猜数字游戏题目链接:https://leetcode-cn.com/problems/bulls-and-cows/分类:哈希表(使用哈希表记录数字和它的出现次数)两个字符串用两个哈希表统计,第1次遍历计算bulls,第2次遍历统计两字符串数字及出现次数,第3次原创 2020-10-15 17:56:48 · 275 阅读 · 0 评论 -
[哈希表] 290. 单词规律(哈希表实现双向映射:containsValue、两个哈希表、借助中转数字字符串)
[哈希表] 290. 单词规律(哈希表实现双向映射:containsValue、两个哈希表、借助中转数字字符串)290. 单词规律题目分析思路1:一个哈希表 + containsValue函数实现遇到的问题:特殊用例思路2:两个哈希表记录双向映射关系(推荐)思路3:一个哈希表 + 字母、单词都转换成数字(推荐)思路4:两个哈希表 + 字母、单词都转换成数字(对思路3的改进,推荐)290. 单词规律题目链接:https://leetcode-cn.com/problems/word-pattern/分原创 2020-10-13 00:33:35 · 262 阅读 · 1 评论 -
[数学 位运算 哈希表] 268. 缺失数字(排序法 → HashSet → 位运算、数学计算+避免溢出)
[数学 位运算 哈希表] 268. 缺失数字(排序法 → HashSet → 位运算、数学计算+避免溢出)268. 缺失数字思路1:排序 + 遍历 (O(NlogN) O(N))思路2:辅助数组(同HashSet,O(N) O(N))思路3:位运算-异或 (O(N) O(1))思路4:数学 + 溢出避免(O(N) O(1))268. 缺失数字题目链接:https://leetcode-cn.com/problems/missing-number/分类:排序(Arrays.sort对数组排序、遍原创 2020-10-08 16:04:38 · 143 阅读 · 0 评论 -
[位运算 哈希表] 136. 只出现一次的数字(哈希表法 → 位运算)137.只出现一次的数字 II (位运算+遍历统计、逻辑电路法)260. 只出现一次的数字 III(位运算+分组异或)
[leetcode]137.只出现一次的数字 II题目思路:位运算准备方法1:遍历统计法分析算法流程要点复杂度分析思路2:后序遍历+剪枝分析知识点(带返回值递归的剪枝)代码复杂度分析位运算技巧位运算-leetcode类似题目:题目链接思路:位运算准备解决这个问题之前,可以先看下位运算类似的简单问题:leetcode 136. 只出现一次的数字参考题解方法1:遍历统计法分析出现3次的数字的二进制形式中,统计所有这些元素的每一个二进制位1的出现次数可以发现1的出现次数都是3的倍数.再把只原创 2020-10-08 00:28:20 · 280 阅读 · 0 评论 -
[哈希表 排序] 242. 有效的字母异位词(排序法、哈希表法 → 空间优化)
[哈希表 排序] 242. 有效的字母异位词(排序法、哈希表法 → 空间优化)242. 有效的字母异位词思路1:排序思路2:使用map242. 有效的字母异位词题目链接:https://leetcode-cn.com/problems/valid-anagram/解题思路类似:剑指offer面试题50分类:排序(将字符串转成字符数组,Arrays.sort对字符数组排序)哈希表(key = 字符,value = 出现次数、空间优化:用固定大小的数组代替哈希表)思路1:排序将字符串转原创 2020-10-06 22:29:59 · 152 阅读 · 0 评论 -
[数学 求众数] 169. 多数元素 229. 求众数 II (哈希表、摩尔投票法)
[数学 求众数] 169. 多数元素 229. 求众数 II (哈希表、摩尔投票法)169. 求众数 I(寻找一个出现次数 > n/2的元素)思路1:数组排序 + 中位数=众数 (O(NlogN), O(logN))思路2:哈希表 O(N),O(N)思路3:分治法 O(NlogN),O(logN)思路4:摩尔投票法 O(n),O(1)229. 求众数 II (寻找所有出现次数 > n/3的元素)思路1:哈希表思路2:摩尔投票法169. 求众数 I(寻找一个出现次数 > n/2的元素)原创 2020-10-02 18:32:36 · 378 阅读 · 0 评论 -
[排序 Set] 217. 219. 220 存在重复元素 I II III(哈希表、Set模拟滑动窗口、TreeSet、桶排序)
[排序 Set] 217. 219. 220 存在重复元素 I II III(哈希表、Set模拟滑动窗口、TreeSet、桶排序)217. 存在重复元素题目分析思路1:排序 + 遍历思路2:Set219. 存在重复元素 II题目分析思路1:哈希表思路2:利用set构建滑动窗口(思路更巧妙)220. 存在重复元素 III题目分析思路1:暴力解实现遇到的问题:字面量溢出问题思路2:TreeSet + 另一种角度寻找|差值|<=t的元素 (推荐)实现遇到的问题:TreeSet存放的是包装类思路3:桶排序(推原创 2020-09-30 00:01:40 · 113 阅读 · 0 评论 -
[字符串 哈希表] 205. 同构字符串(利用哈希表寻找双向映射关系)
[字符串 哈希表] 205. 同构字符串(利用哈希表寻找双向映射关系)205.同构字符串题目分析思路1:map + set + 字母种类数比较(自己想到的,推荐)算法设计实现代码思路2:map + 调换参数执行两次思路3:两个数组记录s->t,t->s(较简洁,推荐)知识点:1、char字符写在数组的下标处时会自动转换为ASCII码值。2、int数组存放char型数据时,char型数据会自动转成ASCII码存入。实现代码205.同构字符串题目链接:https://leetcode-cn.co原创 2020-09-21 00:16:00 · 243 阅读 · 0 评论 -
[数学规律] 204. 计数质数 (质数判断方法:暴力解 → 缩小范围 → 引入bitmap)
[数学规律] 204. 计数质数 (质数判断方法:暴力解 → 缩小范围 → 引入bitmap)204. 计数质数题目分析思路1:暴力解如何判断一个数是不是质数?思路1的优化:缩小计算范围思路2:引入bitmap如何填充bitmap?思路2的优化204. 计数质数题目链接:https://leetcode-cn.com/problems/count-primes/分类:数学规律(找出质数的判断方法)算法优化(暴力解 → 缩小范围 → 引入bitmap)哈希表(bitmap的思想实质上是哈希表)*原创 2020-09-20 21:47:11 · 273 阅读 · 0 评论 -
[数学规律] 202. 快乐数(寻找数学规律、判断是否无限循环:Set、快慢指针法)
[数学规律] 202. 快乐数(寻找数学规律、判断是否无限循环:Set、快慢指针法)202. 快乐数题目分析:(难度不止简单)思路1:set 暴力解法如何判断一个数是否陷入无限循环?实现代码思路2:快慢指针法(模仿链表找环,更巧妙)如何把链表的快慢指针法应用到这题上?实现代码202. 快乐数题目链接:https://leetcode-cn.com/problems/happy-number/关键点(分类):数学规律、问题转化(找快乐数 → 判断是否无限循环)判断是否无限循环:HashSet、快慢原创 2020-09-20 17:53:16 · 1083 阅读 · 0 评论 -
[回溯法 leetcode]126. 127 单词接龙 II I (回溯法、DFS、BFS、优化)
[回溯法 leetcode]126. 单词接龙 II (回溯法、DFS、BFS、优化)126.单词接龙 II题目分析思路1:DFS回溯(初始解法,理解问题)关键问题:1、如何从字典里找到下一个可行的转换?2、回溯法的流程3、易忽略点:题目要求的是最短序列!实现代码思路2:DFS回溯 + BFS寻找最短序列长度关键问题:1、如何将问题转化为图问题?2、如何进行BFS?借助队列 + 如何在BFS过程中找到最短序列长度?知识点:set,map,String,char[]实现时遇到的问题:1、if(found) b原创 2020-10-28 18:28:28 · 277 阅读 · 0 评论 -
[滑动窗口]76. 最小覆盖子串(滑动窗口、哈希表)
[滑动窗口 leetcode]76. 最小覆盖子串(滑动窗口、哈希表)第76题.最小覆盖子串(滑动窗口、哈希表)思路:滑动窗口关键问题:如何判断窗口内字符串包含t所有字符?(check函数的编写)知识点:map的遍历(重点、生疏点)实现代码思路1的优化(修改调用check的时机、字符串预处理)分析优化措施1:修改调用check的时机优化措施2:预处理字符串s实现代码:第76题.最小覆盖子串(滑动窗口、哈希表)题目链接:76. 最小覆盖子串分类:字符串、滑动窗口、哈希表思路:滑动窗口设置滑动窗口左原创 2020-10-20 11:23:16 · 108 阅读 · 0 评论