用法 一
sealed class PriorityQueue[A](implicit val ord: Ordering[A]) extends AbstractIterable[A] with Iterable[A] with IterableOps[A, Iterable, PriorityQueue[A]] with StrictOptimizedIterableOps[A, Iterable, PriorityQueue[A]] with Builder[A, PriorityQueue[A]] with Cloneable[PriorityQueue[A]] with Growable[A] with Serializable
此类使用堆实现优先级队列。要对类型 A 的元素进行优先级排序,必须有一个隐式的 Ordering[A] 在创建时可用。
如果多个元素在此 PriorityQueue 的排序中具有相同的优先级,则不保证 dequeue
或 dequeueAll
返回元素的顺序。特别是,这意味着此类不保证可能从此类名称的 Queue 部分错误地推断出的先进先出行为。
只有 dequeue
和 dequeueAll
方法会按优先级顺序返回元素(同时从堆中删除元素)。包括 drop
、 iterator
和 toString
在内的标准收集方法将以最方便的顺序删除或遍历堆。
因此,打印 PriorityQueue
不会显示元素的优先级顺序,尽管将首先打印 highest-priority 元素。要按顺序打印元素,必须复制 PriorityQueue
(例如,通过使用 clone
)然后将它们出列:
类型参数:
- A
此优先级队列中元素的类型。
值参数:
- ord
用于比较类型
A
的元素的隐式排序.
例子:
val pq = collection.mutable.PriorityQueue(1, 2, 5, 3, 7) println(pq) // elements probably not in order println(pq.clone.dequeueAll) // prints ArraySeq(7, 5, 3, 2, 1)
伴生:
- object
源码:
- PriorityQueue.scala
@SerialVersionUID (3L)
用法 二
object PriorityQueue extends SortedIterableFactory[PriorityQueue]
伴生:
- class
源码:
- PriorityQueue.scala
相关用法
- Scala mutable.MultiMap用法及代码示例
- Scala mutable SortedSet contains()用法及代码示例
- Scala mutable SortedSet equals()用法及代码示例
- Scala mutable SortedSet subsetOf()用法及代码示例
- Scala mutable SortedSet drop()用法及代码示例
- Scala mutable SortedSet diff()用法及代码示例
- Scala mutable SortedSet apply()用法及代码示例
- Scala mutable SortedSet dropRight()用法及代码示例
- Scala math.Ordering用法及代码示例
- Scala map isDefinedAt()用法及代码示例
- Scala map contains()用法及代码示例
- Scala matching.Regex用法及代码示例
- Scala map()用法及代码示例
- Scala math.Ordered用法及代码示例
- Scala Tabulate.sliding用法及代码示例
- Scala ArrayBuffer.inits用法及代码示例
- Scala long.BitwiseOr用法及代码示例
- Scala StringBuilder.partitionMap用法及代码示例
- Scala List distinct()用法及代码示例
- Scala DefaultMap.sizeIs用法及代码示例
- Scala StrictOptimizedIterableOps.sliding用法及代码示例
- Scala Searching.SearchResult用法及代码示例
- Scala ::.collectFirst用法及代码示例
- Scala TreeSet diff()用法及代码示例
- Scala Char getClass()用法及代码示例
注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 mutable.PriorityQueue。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。