module Make (Ord : OrderedType) :
Swith type elt = Ord.t
Generates priority queue types from ordered types.
Type of elements contained in the priority queue.
Type of priority queues.
val empty : t
The empty priority queue. Contains no elements.
val is_empty : t -> bool
is_empty q evaluates to true iff q is empty.
add e q evaluates to a new priority queue, which contains all the elements of q, and the additional element e.
union q q' evaluates to a new priority queue, which contains all the elements of both q and q'.
find_min q evaluates to the minimum element of q if it is not empty, and raises Not_found otherwise.
lookup_min q evaluates to Some e, where e is the minimum element of q, if q is not empty, and evaluates to None otherwise.
remove_min q evaluates to a new priority queue, which contains all the elements of q except for its minimum element. Raises Not_found if q is empty.
val size : t -> int
size q evaluates to the number of elements in q.