|
© 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.QueueArray
An implementation of queues based on arrays. The head of the queue starts out at the head of the array, allowing the queue to grow and shrink in constant time. This queue implementation is ideal for applications that require a queue with a known maximum size that expands in constant time.
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) { int charsInInput = QueueExample.countChars(argument);QueueArray
q = newQueueArray(charsInInput)
; 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); }
QueueList
,
QueueVector
Field Summary | |
protected int |
count
current size of queue |
protected Object[] |
data
The references to values stored within the queue. |
protected int |
head
index of the head of queue. |
Constructor Summary | |
QueueArray(int size)
Construct a queue holding at most size elements. |
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. |
boolean |
isFull()
Determines if the queue is not able to accept any new values. |
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 Object[] data
protected int head
protected int count
Constructor Detail |
public QueueArray(int size)
size
- The maximum size of the queue.Method Detail |
public void add(Object value)
add
in interface Queue
value
- The value added.AbstractQueue.enqueue(java.lang.Object)
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 isFull()
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 |