[prev] [index] [next]

Exercise: Queue Data Type

Implement a Queue data type using linked lists:

typedef struct queueNode { ... } QueueNode;
typedef struct queueRep { ... } QueueRep;
typedef QueueRep *Queue;

Queue emptyQueue();      // make an empty Queue
int length(Queue q);     // # values in Queue
int isEmpty(Queue q);    // is Queue empty?
enqueue(Queue q, int v); // add value at tail 
int dequeue(Queue s);    // remove head value