3import java.util.NoSuchElementException;
4import java.util.Comparator;
12 protected Comparator<T>
cmp_ =
null;
25 @SuppressWarnings(
"unchecked")
26 protected
boolean less(T a,T b) {
28 (
cmp_.compare(a,b)<0) : (((Comparable<T>) a).compareTo(b)<0);
46 public abstract T
pop();
51 public abstract void push(T x);
Interface for an ADT priority queue.
abstract void push(T x)
Push x into PQ.
abstract T pop()
Pop minimal element from PQ.
AbstractPriorityQueue(java.util.Comparator< T > cmp)
create empty PQ and use cmp_ for comparison of priorities
boolean less(T a, T b)
test for a<b, uses Comparator if one was provided or Comparable else.
AbstractPriorityQueue()
create empty PQ
abstract T front()
Get minimal element.
abstract boolean is_empty()
Is PQ empty?