[prev] 11 [next]

Priority Queue Data Structure

Priority Queue: Highest-priority-out protocol
  • insert operation called enter (or enqueue())
  • remove operation called leave (or dequeue())
  • has a head (next for removal), a tail (lowest-priority), and a size
Priority Queue interface:

typedef struct priorityq * PriorityQ;
PriorityQ initPriorityQ(void);
int  enterPriorityQ(PriorityQ q, Item val);
Item leavePriorityQ(PriorityQ q);
int  isEmptyPriorityQ(PriorityQ q);
void destroyPriorityQ(PriorityQ q);