Starting Out With C++: Early Objects, Loose-leaf Edition (10th Edition)
10th Edition
ISBN: 9780135241004
Author: Tony Gaddis, Judy Walters, Godfrey Muganda
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Concept explainers
Question
Chapter 19, Problem 5PC
Program Plan Intro
Tree Width
Program Plan:
- Define a class BTreeNode to create nodes for binary search tree items.
- Include all the required header files.
- Initialize a value to the node, and set the left child of node to leftp and right child of node to rightp .
- Define a class to create a Binary Search Tree.
- Create a function int width that returns width of the tree.
- Create a function bool search to search a particular item in tree.
- Create a function leafCounter that counts no. of leaves present in a level.
- Create function void insert to insert nodes into the tree.
- Create a function void inorder to sort items in inorder traversal.
- Declare the main function.
- Prompt the user to enter 5 numbers to be inserted into tree.
- Sort the items present in the tree in inorder traversal and return the width of the Binary Search Tree.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Python binary search tree: a function that takes in a root, p, and checks whether the tree rooted in p is a binary search tree or not. What is the time complexity of your function?
def is_bst(self, p: Node):
Text concordance using BST
1 Project description
Write a cross-reference program that constructs a binary search tree (any type, including splay tree) with all words included from a text file and records the positions (word or line numbers) on which these words were used. These line numbers should be stored on linked lists associated with the nodes of the tree. After the input file has been processed, print in alphabetical order all words of the text file along with the corresponding list of numbers of the lines in which the words occur.
2 What to turn in
You will turn in
a short written report containing: A description of the significant choices/issues in the design of your code.
The source-code of your program.
3 Coding standards
A percentage of your grade will be based on the quality of your code, so pay attention to it. Discuss changes (if any) you made to programs presented in class. Take extra care in documenting the code you are implementing on your…
Computer Science
Exercise: depth [★★]
Write a function depth : 'a tree -> int that returns the number of nodes in any longest path from the root to a leaf. For example, the depth of an empty tree (simply Leaf) is 0, and the depth of tree t above is 3. Hint: there is a library function max : 'a -> 'a -> 'a that returns the maximum of any two values of the same type.
please use Ocaml for the coding
Chapter 19 Solutions
Starting Out With C++: Early Objects, Loose-leaf Edition (10th Edition)
Ch. 19.1 - Prob. 19.1CPCh. 19.1 - Prob. 19.2CPCh. 19.1 - Prob. 19.3CPCh. 19.1 - Prob. 19.4CPCh. 19.1 - Prob. 19.5CPCh. 19.1 - Prob. 19.6CPCh. 19.2 - Prob. 19.7CPCh. 19.2 - Prob. 19.8CPCh. 19.2 - Prob. 19.9CPCh. 19.2 - Prob. 19.10CP
Ch. 19.2 - Prob. 19.11CPCh. 19.2 - Prob. 19.12CPCh. 19 - Prob. 1RQECh. 19 - Prob. 2RQECh. 19 - Prob. 3RQECh. 19 - Prob. 4RQECh. 19 - Prob. 5RQECh. 19 - Prob. 6RQECh. 19 - Prob. 7RQECh. 19 - Prob. 8RQECh. 19 - Prob. 9RQECh. 19 - Prob. 10RQECh. 19 - Prob. 11RQECh. 19 - Prob. 12RQECh. 19 - Prob. 13RQECh. 19 - Prob. 14RQECh. 19 - Prob. 15RQECh. 19 - Prob. 16RQECh. 19 - Prob. 17RQECh. 19 - Prob. 18RQECh. 19 - Prob. 19RQECh. 19 - Prob. 20RQECh. 19 - Prob. 1PCCh. 19 - Prob. 2PCCh. 19 - Prob. 3PCCh. 19 - Prob. 4PCCh. 19 - Prob. 5PCCh. 19 - Prob. 6PCCh. 19 - Prob. 7PCCh. 19 - Prob. 8PCCh. 19 - Prob. 9PCCh. 19 - Prob. 10PC
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- C Programming language Binary Search Tree Empirical and Theoretical Results Part 1: we need to define a binary search tree data structure. Also, we need to implement the following functions: 1. Insert Sorted: BSTREE insert(BSTREE root, int num): root points to a node in a binary search tree; num is a number to be inserted in the tree rooted at "root". This function returns the root of the modified tree. 2. Print Elements: void inorder traversal(BSTREE root, FILE *fp): root points to a node in a binary search tree. This function does not return anything, but prints out, to the file specified, the nodes in the tree rooted at "root" by performing an inorder traversal. Part 2: Test the performance of the designed data structure using theoretical and experimental approaches as follows:1. Dataset 1-Dataset is sorted- Add code to insert the numbers 1...n in that order in an initially empty doubly linked list and a binary search tree. a. Run it on different values of n where : i.…arrow_forwardBinary Search Tree Empirical and Theoretical ResultsPart 1: we need to define a binary search tree data structure. Also, we need to implement the following functions:1. Insert Sorted: BSTREE insert(BSTREE root, int num): root points to a node in a binary search tree; num is a number to be inserted in the tree rooted at “root”. This function returns the root of the modified tree.2. Print Elements: void inorder traversal(BSTREE root, FILE *fp): root points to a node in a binary search tree. This function does not return anything, but prints out, to the file specified, the nodes in the tree rooted at “root” by performing an inorder traversal. Part 2: Test the performance of the designed data structure using theoretical and experimental approaches as follows:1. Dataset 1-Dataset is sorted- Add code to insert the numbers 1...n in that order in an initially empty doubly linked list and a binary search tree.a. Run it on different values of n where :i. n = 20,000ii. n = 50,000iii. n =…arrow_forwardBinary Search Tree Empirical and Theoretical ResultsPart 1: we need to define a binary search tree data structure. Also, we need to implement the following functions:1. Insert Sorted: BSTREE insert(BSTREE root, int num): root points to a node in a binary search tree; num is a number to be inserted in the tree rooted at “root”. This function returns the root of the modified tree.2. Print Elements: void inorder traversal(BSTREE root, FILE *fp): root points to a node in a binary search tree. This function does not return anything, but prints out, to the file specified, the nodes in the tree rooted at “root” by performing an inorder traversal.arrow_forward
- Assume the above tree is a binary search tree, a) Show the tree after removing node h; b) Show the tree after removing node f; c) Show the tree after removing node a; Please do part a b and c (Note, each small question is independent.)arrow_forwardPythin: A binary search tree, write a function that finds and returns the median value. Assume that the class member variable. [_size] contains the number of elements in the binary search tree. What is the time complexity of your function? def find_median(self):arrow_forwardComputer Science QUESTION: Expression tree is an application of binary tree to represent arithmetic expression. Write a program to implement an ExpressionTree class that can represent an arithmetic expression with binary operators and integer operands including floating-point. Limit the operators to addition, subtraction, multiplication and division. Operands can be constants or variables. Your class should be able to build a tree from its signature, and evaluate it on a set of values for the variable operands.arrow_forward
- Data structures adn Algorithm C++ Consider the binary search tree in the figure below. The numbers simply label the nodes so that you can reference them; they do not indicate the contents of the nodes. The answer to this question is the node position to the left of the node (the numbers 1-31). Beginning with an empty binary search tree, consider the binary search tree that is formed when you insert the following values in the order given: W, T, A, B, E At what position is B?arrow_forwardF# Exercise, BST write the following binary search tree functions in F# for a binary search tree of integers. Use the following type definition for a BST (copy this into your solution): F# system functions (such as min) and the method in the List module such as List.map. are not allowed // Tree definition for problem: type BST = | Empty | TreeNode of int * BST * BST insert value tree: Inserts the value into the tree and returns the resulting tree. The resulting tree does NOT need to be balanced. If the value already exists in the tree, return the tree without inserting the value. search value tree: Returns true if the value is in the tree and false otherwise. count func tree: The parameter func is a Boolean function that takes a single parameter and returns true or false. The function tests the value of each node with func and returns the number of nodes that evaluate to true. evenCount tree: Returns the number of nodes that contain even integers. REQUIREMENT: This…arrow_forwardA binary tree is balanced if every node in the tree is such that the heights of its left and right subtrees do not differ by more than one. Complete the pseudo-code method isBalanced which determines if a binary tree is balanced. The function returns a value of -1 if the tree is not balanced, otherwise it returns the height of the tree. Add comments to explain what your code segment is doing. The following definition of a node in the tree is used. class BinaryNode { int element; BinaryNode left; BinaryNode right; } Complete the method below: int isBalanced (BinaryNode t) { int leftCount=0; int rightCount=0; if (t == null) //empty tree, height is 0 return 0; if ((t.left== null) and (t.right== null) return 0; else { . . . . . . . . . } }arrow_forward
- Data structures adn algorithm C++ Consider the binary search tree in the figure below. The numbers simply label the nodes so that you can reference them; they do not indicate the contents of the nodes. The answer to this question is the node position to the left of the node (the numbers 1-31). Beginning with an empty binary search tree, consider the binary search tree that is formed when you insert the following values in the order given: A, B, W, J, N, E At what position is A?arrow_forwardData structures and algorithm C++ Consider the binary search tree in the figure below. The numbers simply label the nodes so that you can reference them; they do not indicate the contents of the nodes. The answer to this question is the node position to the left of the node (the numbers 1-31). Beginning with an empty binary search tree, consider the binary search tree that is formed when you insert the following values in the order given: W, T, A, B, E At what position is T?arrow_forward1. Modify the implementation of binary search tree and add a function to count the number of leaf nodes. 2. Modify the implementation of binary search tree and add a function to calculate the height of the tree. Run this project in C++.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education