对于ArrayList,基础dataStructure是Array,对于LinkedList,它是Link对象,对于HashMap或HashTable,它可以是LinkedList或Tree的数组,HashSet中使用的数据结构是什么
根据Javadoc,HashSet的后备数据结构是HashMap.
JDK 1.6代码验证了这一点:
public HashSet() {
map = new HashMap<>();
}
Run Code Online (Sandbox Code Playgroud)
哈希的天真想法是将一个元素存储到一个位置索引的数组中,该位置索引计算如下:
所以这些可以通过数组或链表完成.
在java中HashSet
使用HashMap
内部
从源代码
public HashSet() {
map = new HashMap<E,Object>();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6527 次 |
最近记录: |