|
© 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.BinarySearchTree
A binary search tree structure. This structure maintains data in an ordered tree. It does not keep the tree balanced, so performance may degrade if the tree height is not optimal.
Example usage:
To create a Binary search tree containing the months of the year and to print out this tree as it grows we could use the following.
public static void main(String[] argv){ BinarySearchTree test = newBinarySearchTree()
; //declare an array of months String[] months = new String[]{"March", "May", "November", "August", "April", "January", "December", "July", "February", "June", "October", "September"}; //add the months to the tree and print out the tree as it grows for(int i=0; i < months.length; i++){ test.add(months[i])
; System.out.println("Adding: " + months[i] + "\n" +test.treeString()
); } }
SplayTree
,
BinaryTree
Field Summary | |
protected int |
count
The number of nodes in the tree |
protected Comparator |
ordering
The ordering used on this search tree. |
protected BinaryTree |
root
A reference to the root of the tree |
Constructor Summary | |
BinarySearchTree()
Constructs a binary search tree with no data |
|
BinarySearchTree(Comparator alternateOrder)
Constructs a binary search tree with no data |
Method Summary | |
void |
add(Object value)
Add a (possibly duplicate) value to binary search tree |
void |
clear()
Removes all data from the binary search tree |
boolean |
contains(Object value)
Determines if the binary search tree contains a value |
Object |
get(Object value)
Returns reference to value found within three. |
int |
hashCode()
Returns the hashCode of the value stored by this object. |
boolean |
isEmpty()
Checks for an empty binary search tree |
Iterator |
iterator()
Returns an iterator over the binary search tree. |
protected BinaryTree |
locate(BinaryTree root,
Object value)
|
protected BinaryTree |
predecessor(BinaryTree root)
|
Object |
remove(Object value)
Remove an value "equals to" the indicated value. |
protected BinaryTree |
removeTop(BinaryTree topNode)
Removes the top node of the tree rooted, performs the necissary rotations to reconnect the tree. |
int |
size()
Determines the number of data values within the tree |
protected BinaryTree |
successor(BinaryTree root)
|
String |
toString()
Returns a string representing tree |
String |
treeString()
Returns a (possibly long) string representing tree. |
Methods inherited from class structure.AbstractStructure |
elements, values |
Methods inherited from class java.lang.Object |
|
Methods inherited from interface structure.Structure |
elements, values |
Field Detail |
protected BinaryTree root
protected int count
protected Comparator ordering
Constructor Detail |
public BinarySearchTree()
public BinarySearchTree(Comparator alternateOrder)
Method Detail |
public boolean isEmpty()
isEmpty
in interface Structure
isEmpty
in class AbstractStructure
public void clear()
clear
in interface Structure
public int size()
size
in interface Structure
protected BinaryTree locate(BinaryTree root, Object value)
protected BinaryTree predecessor(BinaryTree root)
protected BinaryTree successor(BinaryTree root)
public void add(Object value)
add
in interface Structure
val
- A reference to non-null objectpublic boolean contains(Object value)
contains
in interface Structure
contains
in class AbstractStructure
val
- The value sought. Should be non-nullpublic Object get(Object value)
val
- Value sought from within treepublic Object remove(Object value)
remove
in interface Structure
val
- Value sought to be removed from treeprotected BinaryTree removeTop(BinaryTree topNode)
topNode
- Contains the value we want to removepublic Iterator iterator()
iterator
in interface Structure
public int hashCode()
hashCode
in class AbstractStructure
public String treeString()
toString()
in that toString()
outputs
a single line representation of the contents of the tree.
treeString
, however, prints out a graphical
representations of the tree's structure.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 |