public class ArrayBasedTree
extends java.lang.Object
Constructor and Description |
---|
ArrayBasedTree() |
Modifier and Type | Method and Description |
---|---|
ImplicitTreeNode |
CreateNode(java.lang.String firstName,
java.lang.String lastName)
Creates a node that holds the given name values.
|
protected void |
CreateSearchQueue(ImplicitTreeNode node)
Recursively creates a full queue of tree for breadth-first searching.
|
protected void |
CreateSearchStack(ImplicitTreeNode node)
Recursively creates full stack of tree for depth-first searching.
|
int |
GetNodePositionOnLevel(ImplicitTreeNode compareNode,
ImplicitTreeNode rootNode)
Gets number of prior nodes at same level.
|
void |
InsertNode(ImplicitTreeNode newNode)
Inserts new node at Next open index of tree.
|
protected void |
OrganizeHeap(ImplicitTreeNode updateNode)
Organizes heap by comparing node to parents and swapping TreeNode values if necessary.
|
void |
PrintTreeInOrder(ImplicitTreeNode node)
Uses in-order traversal to print all values within tree.
|
void |
PrintTreePostOrder(ImplicitTreeNode node)
Uses post-order traversal to print all values within tree.
|
void |
PrintTreePreOrder(ImplicitTreeNode node)
Uses pre-order traversal to print all values within tree.
|
protected void |
ResizeTree()
Increases tree's array size.
|
ImplicitTreeNode |
SearchBreadthFirst(java.lang.String firstName,
java.lang.String lastName)
Uses a breadth-first search of tree to look for name match.
|
ImplicitTreeNode |
SearchDepthFirst(java.lang.String firstName,
java.lang.String lastName)
Uses a depth-first search of tree to look for name match.
|
protected void |
SetNodeLevel(ImplicitTreeNode node)
Sets level of node within tree.
|
ImplicitTreeNode |
TreeRoot()
Getter for tree root node.
|
void |
TreeRoot(ImplicitTreeNode treeRoot)
Setter for tree root node.
|
public ImplicitTreeNode TreeRoot()
public void TreeRoot(ImplicitTreeNode treeRoot)
treeRoot
- Node to be tree's root.public ImplicitTreeNode CreateNode(java.lang.String firstName, java.lang.String lastName)
firstName
- First name to store.lastName
- Last name to store.public void InsertNode(ImplicitTreeNode newNode)
newNode
- Node to insert in tree.public void PrintTreePreOrder(ImplicitTreeNode node)
node
- Root node of tree.public void PrintTreeInOrder(ImplicitTreeNode node)
node
- Root node of tree.public void PrintTreePostOrder(ImplicitTreeNode node)
node
- Root node of tree.public int GetNodePositionOnLevel(ImplicitTreeNode compareNode, ImplicitTreeNode rootNode)
compareNode
- Node to compare at.rootNode
- Root of tree.public ImplicitTreeNode SearchBreadthFirst(java.lang.String firstName, java.lang.String lastName)
firstName
- First name to match.lastName
- Last name to match.public ImplicitTreeNode SearchDepthFirst(java.lang.String firstName, java.lang.String lastName)
firstName
- First name to match.lastName
- Last name to match.protected void SetNodeLevel(ImplicitTreeNode node)
node
- Node to set.protected void OrganizeHeap(ImplicitTreeNode updateNode)
updateNode
- Node to start updating from.protected void ResizeTree()
protected void CreateSearchQueue(ImplicitTreeNode node)
node
- Current node to enqueue.protected void CreateSearchStack(ImplicitTreeNode node)
node
- Current node to push.