DataStructures
Class RedBlackTree

java.lang.Object
  |
  +--DataStructures.RedBlackTree

public class RedBlackTree
extends java.lang.Object

Implements a red-black tree. Note that all "matching" is based on the compareTo method.


Constructor Summary
RedBlackTree(Comparable negInf)
          Construct the tree.
 
Method Summary
 Comparable find(Comparable x)
          Find an item in the tree.
 Comparable findMax()
          Find the largest item in the tree.
 Comparable findMin()
          Find the smallest item the tree.
 void insert(Comparable item)
          Insert into the tree.
 boolean isEmpty()
          Test if the tree is logically empty.
static void main(java.lang.String[] args)
           
 void makeEmpty()
          Make the tree logically empty.
 void printTree()
          Print the tree contents in sorted order.
 void remove(Comparable x)
          Remove from the tree.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RedBlackTree

public RedBlackTree(Comparable negInf)
Construct the tree.
Parameters:
negInf - a value less than or equal to all others.
Method Detail

insert

public void insert(Comparable item)
Insert into the tree. Does nothing if item already present.
Parameters:
item - the item to insert.

remove

public void remove(Comparable x)
Remove from the tree. Not implemented in this version.
Parameters:
x - the item to remove.

findMin

public Comparable findMin()
Find the smallest item the tree.
Returns:
the smallest item or null if empty.

findMax

public Comparable findMax()
Find the largest item in the tree.
Returns:
the largest item or null if empty.

find

public Comparable find(Comparable x)
Find an item in the tree.
Parameters:
x - the item to search for.
Returns:
the matching item or null if not found.

makeEmpty

public void makeEmpty()
Make the tree logically empty.

isEmpty

public boolean isEmpty()
Test if the tree is logically empty.
Returns:
true if empty, false otherwise.

printTree

public void printTree()
Print the tree contents in sorted order.

main

public static void main(java.lang.String[] args)