fc.util
Class Tree

java.lang.Object
  extended by fc.util.Tree

public class Tree
extends Object

Implements a simple Tree data structure. The tree is made up of nodes. Each node has an associated object holding the data for that node and has zero (0) or arbitrary more children.

Depending on the application, leaf data can be collectively stored as part of the data for a node or spread out among child (leaf) nodes. For example, if the tree represents a directory structure, files (leaf data) for a directory can be stored as part of that directory's node itself or as part of additional child nodes under that directory node (1 file per child node). Such additional child nodes should be used for leaf data if there is some chance/need of converting those leaf nodes to non-leaf nodes in the future.

This class provides operations common to all trees. Tree based data structures can be built on top of this class.


Nested Class Summary
static class Tree.IterationOrder
           
static class Tree.Node
           
 
Constructor Summary
Tree()
          Constructs a new tree
Tree(String name)
          Constructs a new tree with the specified name
 
Method Summary
 Tree.Node createRootNode(Object data)
          Creates and returns the root node for this tree.
 Tree.Node getRootNode()
          Returns the root node of this tree.
static void main(String[] args)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Tree

public Tree()
Constructs a new tree


Tree

public Tree(String name)
Constructs a new tree with the specified name

Parameters:
name - the name of this tree
Method Detail

createRootNode

public Tree.Node createRootNode(Object data)
Creates and returns the root node for this tree.

Parameters:
data - the data object associated with this node

getRootNode

public Tree.Node getRootNode()
Returns the root node of this tree. If no root node has been created returns null.


toString

public String toString()
Overrides:
toString in class Object

main

public static void main(String[] args)
                 throws Exception
Throws:
Exception