| Modifier and Type | Field and Description |
|---|---|
private TreeNode<K,V> |
TreeNode.leftChild |
private TreeNode<K,V> |
TreeNode.parent |
private TreeNode<K,V> |
TreeNode.rightChild |
private TreeNode<K,V> |
BinarySearchTree.root |
| Modifier and Type | Field and Description |
|---|---|
private java.util.Vector<TreeNode<K,V>> |
TreeIterator.treeNodes |
| Modifier and Type | Method and Description |
|---|---|
private TreeNode<K,V> |
BinarySearchTree.balanceTree(java.lang.Object[] arr,
int first,
int last)
The private recursive method to balance the BinarySearchTree.
|
static TreeNode<java.lang.Integer,java.lang.String> |
TestBinarySearchTree.balanceTree(java.lang.Object[] arr,
int first,
int last) |
private TreeNode<K,V> |
BinarySearchTree.deleteItem(TreeNode<K,V> node,
K key)
The private recursive method to delete the TreeItem
with the specified key from BinarySearchTree.
|
private TreeNode<K,V> |
BinarySearchTree.deleteNode(TreeNode<K,V> node)
The private recursive method to delete the specified TreeNode.
|
private TreeNode<K,V> |
BinarySearchTree.deleteSuccessorNode(TreeNode<K,V> node)
The private recursive method to deleted the left-most child of a subtree
This method is initially called by the
deleteNode method |
private TreeNode<K,V> |
BinarySearchTree.findSuccessorNode(TreeNode<K,V> node)
The private recursive method to find the left-most child of a subtree
This method is initially called by the
deleteNode method |
TreeNode<K,V> |
TreeNode.getLeftChild() |
TreeNode<K,V> |
TreeNode.getParent() |
TreeNode<K,V> |
TreeNode.getRightChild() |
TreeNode<K,V> |
BinarySearchTree.getRoot()
Method to get the current root of this BinarySearchTree
|
private TreeNode<K,V> |
BinarySearchTree.insertItem(TreeNode<K,V> node,
TreeNode<K,V> parent,
TreeItem<K,V> treeItem)
The private recursive method to insert the TreeItem
into the BinarySearchTree.
|
| Modifier and Type | Method and Description |
|---|---|
private TreeNode<K,V> |
BinarySearchTree.deleteItem(TreeNode<K,V> node,
K key)
The private recursive method to delete the TreeItem
with the specified key from BinarySearchTree.
|
private TreeNode<K,V> |
BinarySearchTree.deleteNode(TreeNode<K,V> node)
The private recursive method to delete the specified TreeNode.
|
private TreeNode<K,V> |
BinarySearchTree.deleteSuccessorNode(TreeNode<K,V> node)
The private recursive method to deleted the left-most child of a subtree
This method is initially called by the
deleteNode method |
private TreeItem<K,V> |
BinarySearchTree.findItem(TreeNode<K,V> node,
K key)
The private recursive method to find and retrieve the TreeItem
with the given key if it is in the BinarySearchTree.
|
private TreeNode<K,V> |
BinarySearchTree.findSuccessorNode(TreeNode<K,V> node)
The private recursive method to find the left-most child of a subtree
This method is initially called by the
deleteNode method |
private void |
TreeIterator.inorder(TreeNode<K,V> treeNode)
A recursive method that traverses the binary search tree rooted at the
specified
treeNode in in-order, adding the visited nodes
to the treeNodes Vector. |
private TreeNode<K,V> |
BinarySearchTree.insertItem(TreeNode<K,V> node,
TreeNode<K,V> parent,
TreeItem<K,V> treeItem)
The private recursive method to insert the TreeItem
into the BinarySearchTree.
|
private TreeNode<K,V> |
BinarySearchTree.insertItem(TreeNode<K,V> node,
TreeNode<K,V> parent,
TreeItem<K,V> treeItem)
The private recursive method to insert the TreeItem
into the BinarySearchTree.
|
private boolean |
BinarySearchTree.isLeafNode(TreeNode<K,V> node)
This method checks if the specified
node is a leaf node. |
private boolean |
BinarySearchTree.noLeftChild(TreeNode<K,V> node)
This method checks if the specified
node has no left child. |
private boolean |
BinarySearchTree.noRightChild(TreeNode<K,V> node)
This method checks if the specified
node has no right child. |
private void |
TreeIterator.postorder(TreeNode<K,V> treeNode)
A recursive method that traverses the binary search tree rooted at the
specified
treeNode in post-order, adding the visited nodes
to the treeNodes Vector. |
private void |
TreeIterator.preorder(TreeNode<K,V> treeNode)
A recursive method that traverses the binary search tree rooted at the
specified
treeNode in pre-order, adding the visited nodes
to the treeNodes Vector. |
void |
TreeNode.setLeftChild(TreeNode<K,V> leftChild) |
void |
TreeNode.setParent(TreeNode<K,V> parent) |
void |
TreeNode.setRightChild(TreeNode<K,V> rightChild) |
void |
BinarySearchTree.setRoot(TreeNode<K,V> root)
Method to set set the root of this BinarySearchTree
|
static void |
TestBinarySearchTree.size(TreeNode<java.lang.Integer,java.lang.String> node) |
static int |
TestBinarySearchTree.treeHeight(TreeNode<java.lang.Integer,java.lang.String> node) |
private int |
BinarySearchTree.treeHeight(TreeNode<K,V> node)
The private recursive method to calculate the height of a subtree rooted at the
specified TreeNode.
|
static boolean |
TestBinarySearchTree.treeIsBalanced(TreeNode<java.lang.Integer,java.lang.String> node) |
private boolean |
BinarySearchTree.treeIsBalanced(TreeNode<K,V> node)
The private recursive method to determine if the tree rooted at the given node is
balanced.
|
| Constructor and Description |
|---|
BinarySearchTree(TreeNode<K,V> root)
This constructor instantiates a BinarySearchTree with the given
root |