Java 理解集合和映射的时间复杂性

Java 理解集合和映射的时间复杂性,java,data-structures,map,set,hashtable,Java,Data Structures,Map,Set,Hashtable,对于插入、删除、搜索等操作,映射和设置的时间复杂度是否相同?我在某个地方读到,底层结构是一个哈希表,这意味着时间将是常数o(1)?总是这样吗?Map和Set只是接口,没有说明时间复杂性。Java SE提供了基于不同概念的不同实现(例如,HashMap、TreeMap、HashSet、TreeSet,…),因此在时间复杂度方面具有不同的优缺点。查看每个实现的JavaDoc,其中解释了所有重要操作/方法的时间复杂性 需要注意的一点是HashSet是HashMap,TreeSet是TreeMap。

对于插入、删除、搜索等操作,映射和设置的时间复杂度是否相同?我在某个地方读到,底层结构是一个哈希表,这意味着时间将是常数o(1)?总是这样吗?

Map
Set
只是接口,没有说明时间复杂性。Java SE提供了基于不同概念的不同实现(例如,
HashMap
TreeMap
HashSet
TreeSet
,…),因此在时间复杂度方面具有不同的优缺点。查看每个实现的JavaDoc,其中解释了所有重要操作/方法的时间复杂性

需要注意的一点是
HashSet
HashMap
TreeSet
TreeMap