一、前言:什么是哈希表
哈希表也称作散列表,是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。
哈希表跟数组有些像,可以根据下标直接查询,所以时间复杂度是O(1),比数组更好的地方是:两个相邻元素不是在相邻的位置,那么就意味着我们比较容易插入。在JAVA中最基本的Hash结构是hashmap,其他的Hash结构都是继承着hashmap,比如Hashset。
二、HashMap方法详解
见博客:https://www.cnblogs.com/xiaostudy/p/9510763.html
三、一切理论都源于实践,多刷题领悟其中精髓才能真正掌握
四、哈希表相关的面试高频题目录
1.两数之和 (力扣 1) 博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/113061167
2.存在重复元素 (力扣 217) 博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/113061208
3.最长和谐子序列(力扣 594) 博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/113061225
4.最长连续序列(力扣 128) 博主的笔记思路及代码讲解:https://blog.csdn.net/qq_40262372/article/details/113061245
五、各种类型的高频面试题汇总:
https://blog.csdn.net/qq_40262372/article/details/112556249
六、如有疑问可加QQ群讨论:725936761 博主免费答疑
欢迎大家一起讨论进步。后续遇到相似的题会继续更新!
为了鼓励大家坚持,当天打卡人数超过一半,群主发一个红包(群主是学生),激励大家坚持下去!希望以后找工作的时候大家能互捞一下~~~