什么时候应该在PriorityQueue上使用TreeMap,反之亦然?

似乎它们都可以让您检索最小值(这是我的Prim算法所需的),并迫使我删除并重新插入密钥以更新其值。不仅对于本示例,而且一般来说,使用一个相对于另一个有任何优势吗?

回答:

一般来说,使用堆仅跟踪最小元素的工作量较小。

一棵树更有组织性,并且需要更多计算才能维护该组织。但是,如果您需要访问 任何 键,而不仅仅是最小键,那么堆就不够了,并且树的额外开销是合理的。

以上是 什么时候应该在PriorityQueue上使用TreeMap,反之亦然? 的全部内容, 来源链接: utcz.com/qa/420227.html

回到顶部