** In Java please, This is the assignment, I have my classes working the place I am running into issues ishow to hand- draw the binary tree with my list of names in requirement 2 and requirement 3.** Thank you in advance   1)You are to implement a binary search tree data structure.  Your program should have a minimum of three classes (the node, the tree, and a driver). Your program should include the following abilities: Ability to add each name into a binary tree node – one at a time.  Place each node into the tree following the general algorithm for binary tree insertion.  (The minimum list of names to be used is on the next page).  You may have the program load the names via a file read OR by hard code.  In either case, you must enter the names 1 at a time using the “add” method you designed.  Names will be read in/added in the EXACT order that they are listed. Ability to delete any name from the tree – one at a time. Ability to print out the tree in either order (alpha and reverse alpha) Ability to “search” the tree for a specific name.  Return the number of probes (i.e. a look at a node).  Each time you look at a node, it is considered a “probe”. Ability to “destroy” or clear out the tree The user should be able to add/delete/print/search/destroy as dynamically (menu driven) – please make sure you consider various scenarios (user could destroy then try to print – watch for these “issues”)   2) After your program is fully functional, analyze your input data and hand-draw the binary tree as your program has (or will have) loaded it.  You may use any graphics tool to do this.  Please be neat.  For each node in the tree (in your picture) give the # of probes to get there (you may optionally have your program print this out instead).  It is expected that your program has: Appropriately named variables and methods A design that follows general rules of modularity Error checking Appropriate comments 3) Do the following: Create a “balancer” – which would take the search tree and put it into the most efficient, balanced form for search efficiency.  (this isn’t easy)

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter17: Linked Lists
Section: Chapter Questions
Problem 5PE
icon
Related questions
Question

** In Java please, This is the assignment, I have my classes working the place I am running into issues ishow to hand- draw the binary tree with my list of names in requirement 2 and requirement 3.** Thank you in advance

 

1)You are to implement a binary search tree data structure.  Your program should have a minimum of three classes (the node, the tree, and a driver). Your program should include the following abilities:

  • Ability to add each name into a binary tree node – one at a time.  Place each node into the tree following the general algorithm for binary tree insertion.  (The minimum list of names to be used is on the next page).  You may have the program load the names via a file read OR by hard code.  In either case, you must enter the names 1 at a time using the “add” method you designed.  Names will be read in/added in the EXACT order that they are listed.
  • Ability to delete any name from the tree – one at a time.
  • Ability to print out the tree in either order (alpha and reverse alpha)
  • Ability to “search” the tree for a specific name.  Return the number of probes (i.e. a look at a node).  Each time you look at a node, it is considered a “probe”.
  • Ability to “destroy” or clear out the tree
  • The user should be able to add/delete/print/search/destroy as dynamically (menu driven) – please make sure you consider various scenarios (user could destroy then try to print – watch for these “issues”)
  •  

2) After your program is fully functional, analyze your input data and hand-draw the binary tree as your program has (or will have) loaded it.  You may use any graphics tool to do this.  Please be neat.  For each node in the tree (in your picture) give the # of probes to get there (you may optionally have your program print this out instead).  It is expected that your program has:

  • Appropriately named variables and methods
  • A design that follows general rules of modularity
  • Error checking
  • Appropriate comments

3) Do the following:

  • Create a “balancer” – which would take the search tree and put it into the most efficient, balanced form for search efficiency.  (this isn’t easy)
Expert Solution
Step 1

The code is given below:-

 

trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 2 images

Blurred answer
Knowledge Booster
Linked List Representation
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
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning