Map(或HashMap)为插入,删除和检索获取恒定时间。虽然到目前为止我所知道的所有其他数据结构都没有花费时间,上述操作的时间取决于输入的大小。
那么,为什么我们需要所有其他数据结构呢?不是HashMap是通用数据结构吗?
答案 0 :(得分:1)
Map 的表现并不免费,成本是内存和复杂性。
对于您不关心表演以及何时不需要访问该集合中的一个元素的所有情况,都存在其他数据结构。
例如,如果你有一个给定的元素列表字符串,并且你的代码中唯一的用途是打印出这个元素列表,那么最好选择使用一个字符串数组。
另一个例子,可能是元素的顺序。如果您关心元素的顺序,那么 Map 不是您应该使用的数据结构,因为订单无法保证,因此您必须在每次需要时进行排序。
这只是两个例子,每个数据结构都有许多其他的例子。
答案 1 :(得分:0)
时不应该使用HashMap
int
时。