|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--structure.AbstractIterator | +--structure.SplayTreeIterator
An iterator for traversing splay trees constructed from BinaryTrees. The iterator performs minimal work before traversal. Every node is considered after every left descendant, but before any right descendant. SplayTreeIterator finishes when all descendants of the start node have been considered.
Example usage:
SplayTree t = new SplayTree(); // ...tree is grown Iterator ti = t.iterator(); while (ti.hasNext()) { System.out.println(ti.next()); } ti.reset(); while (ti.hasNext()) { .... }
Field Summary | |
protected BinaryTree |
current
The current node being considered in tree. |
protected BinaryTree |
tree
A reference to the root of a splay tree. |
Constructor Summary | |
SplayTreeIterator(BinaryTree root)
Construct an iterator that traverses the binary search tree based at the root. |
Method Summary | |
java.lang.Object |
get()
Return a reference to the current value. |
boolean |
hasNext()
Determine if the iterator has more nodes to be considered. |
java.lang.Object |
next()
Returns reference to the current element, and increments iterator. |
void |
reset()
Reset the iterator to reference the root of the tree. |
Methods inherited from class structure.AbstractIterator |
hasMoreElements, nextElement, remove, value |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected BinaryTree tree
protected BinaryTree current
Constructor Detail |
public SplayTreeIterator(BinaryTree root)
root
- The root of the subtree to be traversed.Method Detail |
public void reset()
reset
in class AbstractIterator
public boolean hasNext()
hasNext
in interface java.util.Iterator
hasNext
in class AbstractIterator
AbstractIterator.hasMoreElements()
public java.lang.Object next()
next
in interface java.util.Iterator
next
in class AbstractIterator
AbstractIterator.hasMoreElements()
,
AbstractIterator.value()
public java.lang.Object get()
get
in class AbstractIterator
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |