HashMap 是什么?
HashMap 是一种常用的数据结构,可以通过“键(key)—值(value)”的形式快速存取数据。比如你想存储“姓名 → 电话号码”,用 HashMap 就很方便,因为它能通过名字(键)立刻找到号码(值),不用一个个去翻找。
它的特点:
插入和查找快:在理想情况下,插入或查找一个数据只需要 O(1) 的时间,也就是“常数时间”,非常高效。
解决冲突的方法:当不同的键计算出的哈希值相同,就会发生“冲突”。HashMap 里通常会用链表(或者后来的红黑树)来把这些冲突的元素挂在一起。
不是链表本身:HashMap 不是单纯用链表把所有数据连起来,而是“哈希表 + 链表”的结合。
逐个看题目选项:
A ❌ HashMap 当然可以处理和存储字符串数据,这是它的常见用途。
B ✅ HashMap 确实会用链表来解决哈希冲突。
C ❌ HashMap 不是简单的链表,它的核心是“哈希表”。
D ✅ 插入数据时的平均时间复杂度是 O(1)。
📌 总结:
HashMap 就像一个超快的字典,能在极短时间内根据“键”找到对应的“值”。它的关键优势是查找和插入速度快,内部通过哈希算法定位,再用链表等结构解决冲突。
A项错误,HashMap是一个用于存储Key-Value 对结构的集合类。
C项错误,HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体
故本题选BD。