一、笔记部分
思路:1.一看就查找问题,查找问题一般套路都是排序,排序后相同的都是连着的了,所以很容易就用排序,所以排序一般面试会考就是这样原因,有很多数据的筛选都会通过排序。
2.既然是哈希这一块,就用哈希呗
3.既然看出现次数,那么Key肯定是数组中的值(因为要去查询他),目的是要看数出现的次数,自然K-V对的V是记录次数的。
1.核心枢纽getOrDefault(num[i],0)+1 解释一波,红字的意思是得到num[i](Key值)所对应的Value(出现的次数),如没有出现过,就设置为0。
后面+1的意思是遍历到了这个数,自然会+1,为后一句的判断做基础,只要到了就返回true。
方法二:这样找赋值Hash太慢了,深刻理解下题目中出现两次,实则就是重复。那么我根本不需要去调用这么复杂的方法,直接找了一次就赋值为1,然后一直遍历看是否有没有1的Value就可知了。
二、哈希表类型的高频面试题汇总:
https://blog.csdn.net/qq_40262372/article/details/113060835
三、各种类型的高频面试题汇总:
https://blog.csdn.net/qq_40262372/article/details/112556249