Java的PriorityQueue类有多种构造函数来创建不同类型的优先队列。以下是一些常见的构造函数:
PriorityQueue():创建一个空的优先队列,使用默认的初始容量(11)和自然顺序进行排序。
PriorityQueue(int initialCapacity):创建一个空的优先队列,并指定初始容量。使用默认的自然顺序进行排序。
PriorityQueue(int initialCapacity, Comparator<? super E> comparator):创建一个空的优先队列,并指定初始容量和比较器。使用指定的比较器进行排序。
PriorityQueue(Collection<? extends E> c):创建一个包含指定集合元素的优先队列。使用默认的自然顺序进行排序。
PriorityQueue(PriorityQueue<? extends E> c):创建一个包含指定优先队列元素的优先队列。使用默认的自然顺序进行排序。
PriorityQueue(SortedSet<? extends E> c):创建一个包含指定排序集合元素的优先队列。使用与指定集合相同的排序。
请注意,PriorityQueue是一个无界队列,不需要指定容量限制。当添加元素时,队列会自动调整大小以适应新的元素。