Priority Queue

PriorityQueue

  • PriorityQueue is an implementation class of Queue Interface.
  • It stores objects in ascending order based on some priority.
  • It stores only Homogeneous elements which are of comparable type
  • It does not permit Null values.

Constructor For the Class

Following are the constructor of the class :

  • PriorityQueue() : Creates aPriorityQueuewith the default initial capacity (11) that orders its elements basis of natural ordering.
  • PriorityQueue(Collection<? extendsE>c) :Creates a Priority Queue containing the elements in the specified collection.
  • PriorityQueue(intinitialCapacity) :Creates a Priority Queue with the specified initial capacity that orders its elements based on their natural ordering.
  • PriorityQueue(PriorityQueue<? extendsE>c) :Creates a Priority Queue containing the elements in the specified priority queue.
  • Priority Queue(SortedSet<? extendsE>c) :Creates a PriorityQueue containing the elements in the specified sorted set.
  • Priority Queue(intinitialCapacity, Comparator<? superE>comparator) :Creates a Priority Queue with the specified initial capacity that orders its elements according to the specified comparator.

Methods for the class:

  • boolean add(E e) : This method inserts the specified element into this priority queue.
  • void clear() : This method removes all of the elements from this priority queue.
  • boolean contains(Object o) : This method returns true if this queue contains the specified element.
  • Comparator<? super E> comparator() : This method returns the comparator used to order the elements in this queue, or null if this queue is sorted according to the natural ordering of its elements.
  • Iterator<E> iterator() : This method returns an iterator over the elements in this queue.
  • boolean offer(E e) : This method inserts the specified element into this priority queue.
  • E poll(): This method retrieves and removes the head of this queue, or returns null if this queue is empty.
  • E peek() : This method retrieves, but does not remove, the head of this queue, or returns null if this queue is empty.
  • int size() :This method returns the number of elements in this collection.
  • boolean remove(Object o) : This method removes a single instance of the specified element from this queue, if it is present.
  • Object[] toArray() : This method returns an array containing all of the elements in this queue.
  • <T> T[] toArray(T[] a) :This method returns an array containing all of the elements in this queue; the run time type of the returned array is that of the specified array.

[pastacode lang=”java” manual=”public%20class%20PriorityQueue%0A%7B%0A%0A%20%20%20%20%20%20public%20static%20void%20main(String%5B%5D%20args)%0A%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20System.out.println(%22***************************%22)%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20PriorityQueue%20q1%3Dnew%20PriorityQueue%3C%3E(2)%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20q1.add(%22bhavesh%22)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20q1.add(%22hardik%22)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20q1.add(%22r%20ohit%22)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20q1.add(%22abhilash%22)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20q1.add(%22vivek%22)%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%2F%2Fq1.add(23)%3B%0A%20%20%20%20%20%20%20%20%20%20%20System.out.println(%22queue%20size%3A%20%22%2Bq1.size())%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20Object%20obj2%3Dq1.peek()%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20System.out.println(q1.size())%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20Object%20obj1%3Dq1.poll()%3B%0A%20%20%20%20%20%20%20%20%20%20while(obj1!%3Dnull)%0A%20%20%20%20%20%20%20%20%20%20%7B%0A%0A%20%20%20%20%20%20%20%20%20%20%20System.out.println(obj1)%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%20obj1%3Dq1.poll()%3B%0A%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%2F%2Fafter%20emptying%20queue%20output%20is%20null%0A%20%20%20%20%20%20%20%20%20System.out.println(q1.poll())%3B%0A%0A%20%20%20%20%20%20%20%20%20System.out.println(%22***************************%22)%3B%0A%20%20%20%20%20%20%7D%0A%0A%7D” message=”Java Program to implement PriorityQueue” highlight=”” provider=”manual”/]

output:

***************************
queue size: 5
5
abhilash
bhavesh
hardik
rohit
vivek
null
***************************

Leave a Reply