Assignment 6
Queues
by F Fornos
HTML
<h4>
Enter Value of N:
</h4>
<input type="textbox" id="valueofN" value="10" size="13" />
<input type="button" value="Fill Q1" onClick="sizeofQ();" />
<br/>
<br/>
<input type="button" value="Find Sieve Primes" onClick="myQueue();" />
<p id='reportOut'></p>
JavaScript
var Node = function(_content) {
this.next = null;
this.previous = null;
this.content = _content;
}
var Queue = function() {
this.first = null;
this.last = null;
this.push = function(_content) {
if (this.first == null) {
this.first = new Node(_content);
this.last = this.first;
return this;
}
var addedNode = new Node(_content);
addedNode.previous = this.last;
this.last.next = addedNode;
this.last = addedNode;
return this;
}
this.deleteFirst = function() {
if (this.first == null) {
return null;
}
var valtoDelete = this.first.content;
if (this.last == this.first) {
this.first = null;
this.last = null;
return valtoDelete;
} else {
this.first = this.first.next;
this.first.previous = null;
return valtoDelete;
}
}
this.deleteLast = function() {
if (this.first == null) {
return null;
}
var valtoDelete = this.last.content;
if (this.last == this.first) {
this.first = null;
this.last = null;
return a;
} else {
this.last = this.last.previous;
this.last.next = null;
return valtoDelete;
}
}
this.toString = function() {
var str = "";
var node = this.first;
if (this.first == null) {
str = "Empty";
}
while (node != null) {
str += node.content + " ";
node = node.next;
}
return str;
}
this.countElements = function() {
var countX = 0;
var node = this.first;
while (node != null) {
node = node.next;
countX = countX + 1;
}
return countX;
}
}
var valtoHold = '';
var iCount = 0;
function myQueue() {
if (qOne.countElements() > 0) {
qTwo = new Queue();
var holdIt = qOne.deleteFirst();
valtoHold = holdIt;
...