back = (back+1) % MAX_QUEUE;
items[back]= newItem;
++count;
What type of method is this and what is it doing?
Front
Circular Array
Inserting into the queue(if not full)
Back
newNode.setNext(newNode);
lastNode=newNode;
Front
Reference-based Queue (empty queue)
Back
if(!isEmpty()){
Node temp= front;
front=front.getNext();
if(front==null) // was one element queue
rear= null;
return temp.getItem();
}
else
Front
Linked List Dequeue (two external references)
Back
Public Object dequeue () throws QueueException
{
if (!isEmpty()){
Object remove= items[0];
for ( int i =1; i <= rear; i++)
item[i-1]=items[i];
rear= rear-1;
return remove;
}
else throw new queueExpection
what type of strategy is this?
Front
Array-Based: Naive
Back
lastNode.getNext();
Front
Circular Linked list (one external reference)
Back
if (front == rear){
front=0;
rear=0;
return null;
}
front = (front +1) % MAX_QUEUE;
remove =item[front];
return remove;
Front
Circular Array Dequeue
Back
rear=(rear+1) % MAX_QUEUE;
if (front==rear)
rear=(rear+MAX_queue-1) % MAX_QUEUE;
item[rear]= new item;