QueueTest3

by scotp71

JavaScript

var Queue = {front: null, back: null}; //queue is empty

function Node(data, next){
  this.data = data;
  this.next = next;
}
//add elements to queue
function Enqueue(element) {
  var N = new Node(element, null);
  if(Queue.back === null){
    Queue.front = N;
    Queue.back = N;
  }
  else{
  	Queue.back.next = N;
    Queue.back = Queue.back.next;
  }
  //remove first element from queue
function Dequeue(){
	if(Queue.front !== null){
  	var first = Queue.front;
    Queue.front = Queue.front.next;
    return first.data;
  }
 	else {
  	if(Queue.back != null){
    	Queue.back = null;
    }
  return "Cannot dequeue because queue is empty";
  }
}  
   
}

Enqueue("a");
Enqueue("b");
Enqueue("c");

//Dequeue();