|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--structure.AbstractStructure | +--structure.AbstractLinear | +--structure.AbstractStack | +--structure.StackList
An implementation of a stack, based on lists. The head of the stack is stored at the head of the list, allowing the stack to grow and shrink in constant time. This stack implementation is ideal for applications that require a dynamically resizable stack that expands in constant time.
Example usage:
To reverse a string, we would use the following:
public static void main(String[] arguments) { if(arguments.length > 0){StackList
reverseStack = newStackList()
; String s = arguments[0]; for(int i=0; i < s.length(); i++){ reverseStack.push(new Character(s.charAt(i)))
; } while(!reverseStack.empty()
){ System.out.print(reverseStack.AbstractStack.pop()
); } System.out.println(); } }
Stack
,
StackVector
,
StackArray
,
AbstractStack
Field Summary | |
protected List |
data
The list that maintains the stack data. |
Constructor Summary | |
StackList()
Construct an empty stack. |
Method Summary | |
void |
add(java.lang.Object value)
Add a value to the top of the stack. |
void |
clear()
Remove all elements from the stack. |
boolean |
empty()
Determine if the stack is empty. |
java.lang.Object |
get()
Get a reference to the top value in the stack. |
java.util.Iterator |
iterator()
Returns an iterator for traversing the structure. |
java.lang.Object |
remove()
Remove a value from the top of the stack. |
int |
size()
Determine the number of elements in the stack. |
java.lang.String |
toString()
Construct a string representation of the stack. |
Methods inherited from class structure.AbstractStack |
getFirst, peek, pop, push |
Methods inherited from class structure.AbstractLinear |
remove |
Methods inherited from class structure.AbstractStructure |
contains, elements, hashCode, isEmpty, values |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface structure.Stack |
getFirst, peek, pop, push |
Methods inherited from interface structure.Structure |
contains, elements, isEmpty, remove, values |
Field Detail |
protected List data
Constructor Detail |
public StackList()
Method Detail |
public void clear()
clear
in interface Structure
public boolean empty()
empty
in interface Stack
empty
in class AbstractLinear
AbstractStructure.isEmpty()
public java.util.Iterator iterator()
Structure
iterator
in interface Structure
AbstractIterator
,
Iterator
,
Enumeration
,
Structure.elements()
public java.lang.Object get()
get
in interface Stack
public void add(java.lang.Object value)
add
in interface Stack
value
- The element to be added to the stack top.AbstractStack.push(java.lang.Object)
public java.lang.Object remove()
remove
in interface Stack
AbstractStack.pop()
public int size()
size
in interface Stack
public java.lang.String toString()
toString
in class java.lang.Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |