Lab 5: Binary Search Tree
Implement operations for a Binary Search Tree class starting
from the template provided under the PolyLearn assignment, using
the class TreeNode that is also provided. You may (should)
implement helper methods that make your code easier to write, read,
and understand. You will also need to write test cases of your own
as you develop the methods. You may use iterative and/or recursive
functions in your implementation.
The following starter files are available .
•...
Implement a function to remove a leaf node from a binary search
tree. Using the following class and function definition:
class BTNode {
public:
int item;
BTNode *left;
BTNode *right;
BTNode(int i, BTNode *l=nullptr, BTNode *r=nullptr):item(i),left(l),right(r){}
};
BTNode *root = nullptr;
BTNode * remove_leaf(int item, bool &removed) {
// implement
}
The remove function will return the node with the item if it's
present in the tree. If the node is a leaf node and is removed by
the function,...
In C++
Consider the binary search tree implementation in file
bintree.cp
a)Add to the TreeNode class a pointer to the
parent node. Modify the insert and erase functions to properly set
those pointers.
b)Then define a TreeIterator class that contains a
pointer to a TreeNode and has member functions get and next.
i)The iterator’s get member function should return
the data value of the node to which it points.
ii)The iterator’s next member function should find
the next element in...
Implement a function to find a node in a binary search tree.
Using the following class and function definition. If a node with a
matching value is found, return a pointer to it. If no match is
found, return nullptr.
#include <iostream>
class BTNode {
public:
int item;
BTNode *left;
BTNode *right;
BTNode(int i, BTNode *l=nullptr, BTNode
*r=nullptr):item(i),left(l),right(r){}
};
BTNode *root = nullptr;
BTNode *find(int item)
{
//implement code here
return nullptr;
}
int main()
{
root = new...
Consider the following type of binary trees:
data Tree a = Leaf a | Node (Tree a) (Tree a)
A tree is balanced if the number of leaves in the left and right
subtree of every node differ by at most one. Write a
Haskell function balanced that
returns whether a tree is balanced or not.
balanced :: Tree a -> Bool
java.
Consider a binary tree with integer values in its nodes,
implement a method that returns the sum of the values contained in
all of the nodes of the binary tree with root n.Hint: use
recursion.
C++
Build a binary tree using a binary tree class member function
from the following array of preorder traversal 3,9,20,15,7 and
inorder traversal 9,3,15,20,7. Implement the constructor,
destructor and all member functions including print postorder
traversal of the binary tree.
JAVA PROGRAM
Create a Binary Search Tree with the following elements in the
order mentioned below:
5, 85, 89, 3, 2, 8, 65, 92
Print the Pre-order of this tree
Print the height and the balance factor of the nodes in the
order they were inserted (5, 85, 89, 3, 2, 8, 65, 92) in the form
of a table with three columns and 9 rows. Use column headers
“Node”, “Height”, and “Balance Factor” for the three columns
respectively. Use...
0, 3, 11, 24, 36, 47, 42, 53, 56, 59, 52, 58, 50, 64, 63, 61,
65, 78, 89, 91
A. Calculate the mean, median, and mode.
B. Which measure, mean or median, best describes the central
tendency of this data? Why?