J.E.D.I.
been the first person in the line. This person gets to leave the line first. Relate this to how dequeue works.
Here is a simple illustration of how a queue looks like. 1
2 3
4 5
6 7
8 9
... n-1
Eve Jayz
KC Jojo
Toto Kyla
DMX
front end
← Insert
→ Delete
Table 4: Queue illustration
The queue is empty if end is less than front. Meanwhile, it is full when the end is equal to n-1.
3.3.4  Sequential and Linked Representation
ADTs   can   generally   be   represented   using   sequential   and   linked   representation.   It   is easier   to   create   the   sequential   representation   with   the   use   of   arrays.   However,   the
problem  with an array is its limited  size, making  it  inflexible.  Memory space is either wasted or not enough with use of arrays. Consider this scenario. You’ve created an array
and declared it to be able to store a maximum of 50 elements. If the user only inserts exactly  5  elements,  take  note  that  45  spaces would  have been  wasted.  On  the  other
hand, if the user wants to insert 51 elements, the spaces provided in the array would not have been enough.
Compared to sequential representation, the linked representation may be a little more difficult to implement but it is more flexible. It adapts to the memory need of the user. A
more detailed explanation on linked representation are discussed in a later section.
Introduction to Programming II Page 46
J.E.D.I.
3.3.5  Sequential Representation of an Integer Stack
class SeqStack { int top = -1;      initially, the stack is empty
int memSpace[];    storage for integers int limit;         size of memSpace
SeqStack { memSpace = new int[10];
limit = 10; }
SeqStackint size { memSpace = new int[size];
limit = size; }
boolean pushint value { top++;
check if the stack is full if top  limit {
memSpace[top] = value; } else {
top--; return false;
} return true;
} int pop {
int temp = -1; check if the stack is empty
if top = 0 { temp = memSpace[top];
top--; } else {
return -1; }
return temp; }
public static void mainString args[] { SeqStack myStack = new SeqStack3;
myStack.push1; myStack.push2;
myStack.push3; myStack.push4;
System.out.printlnmyStack.pop; System.out.printlnmyStack.pop;
System.out.printlnmyStack.pop; System.out.printlnmyStack.pop;
} }
Introduction to Programming II Page 47
J.E.D.I.
The following figure gives a trace of SeqStacks main method.
Figure 3.2:Trace of SeqStack
Introduction to Programming II Page 48
J.E.D.I.
3.3.6  Linked Lists