Question: Start with the tree.java program (Listing 8.1) and modify it to create a binary tree from a string of letters (like A, B, and so

Start with the tree.java program (Listing 8.1) and modify it to create a binary

tree from a string of letters (like A, B, and so on) entered by the user. Each

letter will be displayed in its own node. Construct the tree so that all the nodes

that contain letters are leaves. Parent nodes can contain some non-letter

symbol like +. Make sure that every parent node has exactly two children.

Dont worry if the tree is unbalanced. Note that this will not be a search tree;

theres no quick way to find a given node. You may end up with something

like this:

+

+ E

+ D - -

+ C - - - - - -

A B - - - - - - - - - - - - - -

One way to begin is by making an array of trees. (A group of unconnected trees

is called a forest.) Take each letter typed by the user and put it in a node. Take

each of these nodes and put it in a tree, where it will be the root. Now put all

these one-node trees in the array. Start by making a new tree with + at the root

and two of the one-node trees as its children. Then keep adding one-node trees

from the array to this larger tree. Dont worry if its an unbalanced tree. You

can actually store this intermediate tree in the array by writing over a cell

whose contents have already been added to the tree.

The routines find(), insert(), and delete(), which apply only to search trees,

can be deleted. Keep the displayTree() method and the traversals because they

will work on any binary tree.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!