![]() |
| Natural ordering of PriorityQueue |
java.util.PriorityQueue is an unbounded priority queue based on a priority heap. The elements of the priority queue are ordered according to their natural ordering, or by a Comparator provided at queue construction time, depending on which constructor is used. A priority queue does not permit null elements. A priority queue relying on natural ordering also does not permit insertion of non-comparable objects (doing so may result in ClassCastException).
Example code:
package java_priorityqueue;
import java.util.LinkedList;
import java.util.PriorityQueue;
import java.util.Random;
/**
*
* @web http://java-buddy.blogspot.com/
*/
public class Java_PriorityQueue {
public static void main(String[] args) {
int len = 5;
Random random = new Random();
PriorityQueue<Integer> priorityQueue = new PriorityQueue<>(len);
LinkedList<Integer> linkedList = new LinkedList<>();
System.out.println("Random number generated:");
for (int i = 0; i < len; i++) {
Integer randomNumber = new Integer(random.nextInt(100));
linkedList.add(new Integer(randomNumber));
priorityQueue.add(new Integer(randomNumber));
System.out.println(i + ": " + randomNumber);
}
System.out.println("Number in linkedList:");
for (int i = 0; i < len; i++) {
Integer item = linkedList.poll();
System.out.println(i + ": " + item);
}
System.out.println("Number in priorityQueue:");
for (int i = 0; i < len; i++) {
Integer item = priorityQueue.poll();
System.out.println(i + ": " + item);
}
}
}

No comments:
Post a Comment