|
© 1998-2002 McGraw-Hill | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--structure.AbstractStructure | +--structure.AbstractLinear | +--structure.AbstractQueue | +--structure.QueueVector
An implementation of queues based on vectors. The head of the queue is stored at the head of the list, allowing the queue to grow and shrink in constant time. This queue implementation is ideal for applications that require a dynamically resizable queue which occasionally takes a time proportional to the its length to expand.
Example usage:
To compute the sum of the unicode value of every character in the standard input we could use the following:
public static void main(String[] arguments) {QueueVector
q = newQueueVector()
; int unicodeSum = 0; if(arguments.length > 0){ for(int i=0; i < arguments.length; i++){ for(int j=0; j < arguments[i].length(); j++){ q.enqueue(new Character(arguments[i].charAt(j)))
; } } } while(!q.AbstractLinear.empty()
){ char c = ((Character)q.AbstractQueue.dequeue()
).charValue(); unicodeSum+=Character.getNumericValue(c); } System.out.println("Total Value: " + unicodeSum); }
QueueArray
,
QueueList
Field Summary | |
protected Vector |
data
The vector that maintains the queue data |
Constructor Summary | |
QueueVector()
Construct an empty queue |
|
QueueVector(int size)
Constructs an empty queue with an initial allocation of size. |
Method Summary | |
void |
add(Object value)
Add a value to the tail of the queue |
void |
clear()
Remove all the values from the queue. |
Object |
get()
Fetch the value at the head of the queue. |
boolean |
isEmpty()
Determine if the queue is empty. |
Iterator |
iterator()
Returns an iterator for traversing the structure. |
Object |
remove()
Remove a value from the head of the queue |
int |
size()
Determine the number of elements within the queue. |
String |
toString()
Construct a string representation of the queue. |
Methods inherited from class structure.AbstractQueue |
dequeue, enqueue, getFirst, peek |
Methods inherited from class structure.AbstractLinear |
empty, remove |
Methods inherited from class structure.AbstractStructure |
contains, elements, hashCode, values |
Methods inherited from class java.lang.Object |
|
Methods inherited from interface structure.Queue |
dequeue, empty, enqueue, getFirst, peek |
Methods inherited from interface structure.Structure |
contains, elements, remove, values |
Field Detail |
protected Vector data
Constructor Detail |
public QueueVector()
public QueueVector(int size)
size
- Approximate largest queue size needed.Method Detail |
public void add(Object value)
add
in interface Queue
value
- The value added.public Object remove()
remove
in interface Queue
AbstractQueue.dequeue()
public Object get()
get
in interface Queue
public int size()
size
in interface Queue
public void clear()
clear
in interface Structure
public boolean isEmpty()
isEmpty
in interface Structure
isEmpty
in class AbstractStructure
public Iterator iterator()
Structure
iterator
in interface Structure
structure.Structure
AbstractIterator
,
Iterator
,
Enumeration
,
Structure.elements()
public String toString()
toString
in class Object
|
© 1998-2002 McGraw-Hill | |||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |