C++ tree program (please do NOT use struct Node, use
classes)
Program 1 Implement a Binary tree using an array
Program 2 Implement a tree using linked list - pointer Binary
Tree
Program 3 - Convert program 1 to a template
(include screenshots please of output)
C++ tree program (do NOT use STRUCT, use classes)
Program 1 Implement a Binary tree using an
array
Program 2 Implement a tree using linked list -
pointer Binary Tree
Program 3 - Convert program 1 to a template
Consider the following struct that represents a node within a
binary tree:
struct Node {
int data; // Data of interest
Node *left // Link to left subtree (nullptr if
none)
Node *right ; // Link to right subtree (nullptr if
none)
};
Complete the following function that computes the number of
elements in a binary tree:
// Counts the number of elements in the binary tree to
which t points.
// Returns the number of elements.
int size(Node *t)...
(IN C)
Write the code to manage a Binary Tree. Each node in the binary
tree includes an integer value and string. The binary tree is
sorted by the integer value. The functions include:
• Insert into the binary tree. This function will take in as
parameters: the root of the tree, the integer value, and the
string. Note that this function requires you to create the
node.
• Find a node by integer value: This function takes in two...
IN C++
Given a struct Node { int value; Node *left, *right;}; ,
implement the functions below.
a) int getSmallest(Node * r); // return smallest value in the
BST with root r. Assume r not null.
b) int getSecondSmallest(Node * r); // return 2nd smallest value
in BST with root r. Assume r not null and r has a nonnull left or
right child.
c) void removeSecondSmallest(Node * r); // remove 2nd smallest
value in BST with root r. Assume...
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...
In C++,
Implement the heapafication operation. Do not re-implement the
binary tree class. Simply create a funcntion that takes in a binary
tree and heapafies it. Meaning it takes in a pointer to a binary
tree and converts it into a heap. (You may choose max or min
heap).
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,...