1. 首页
  2. 编程语言
  3. Java
  4. 详解JAVA中priorityqueue的具体使用

详解JAVA中priorityqueue的具体使用

上传者: 2021-12-27 09:34:06上传 PDF文件 579.79 KB 热度 12次

Java中PriorityQueue通过二叉小顶堆实现,可以用一棵完全二叉树表示。本文从Queue接口函数出发,结合生动的图解,深入浅出地分析PriorityQueue每个操作的具体过程和时间复杂度,将让读者建立对PriorityQueue建立清晰而深入的认识。总体介绍前面以JavaJava中上图中我们给每个元素按照层序遍历的方式进行了编号,如果你足够细心,会发现父节点和子节点的编号是有联系的,更确切的说父子节点的编号之间有如下关系:通过上述三个公式,可以轻易计算出某个节点的父节点以及子节点的下标。这也就是为什么可以直接用数组来存储堆的原因。方法剖析add()和offer()新加入的元素可能会破坏小顶堆的性质,因此需要进行必要的调整。

下载地址
用户评论