Question: Write classes that implement the general tree class declarations of Figure 6.2 using the linked general tree implementation with child pointer arrays of Figure 6.12.

Write classes that implement the general tree class declarations of Figure 6.2 using the linked general tree implementation with child pointer arrays of Figure 6.12.

/** General tree ADT */ interface GenTree { public void clear (); // Clear the tree. public GTNode root ();

Your implementation should support only fixed-size nodes that do not change their number of children once they are created.

A R B Val Size R 2 F A 3 C D) (E (a) (b) Figure 6.12 A dynamic general tree representation with fixed-size

Then, reimplement these classes with the linked list of children representation of Figure 6.13. How do the two implementations compare in space and time efficiency and ease of implementation?

R A B I I D) (E F  A R - B ME-NE-Z in  D E F (a) (b) Figure 6.13 A dynamic general tree representation with

/** General tree ADT */ interface GenTree { public void clear(); // Clear the tree. public GTNode root (); // Return the root // Make the tree have a new root, give first child and sib public void newroot (E value, GTNode first, GTNode sib); public void newleftchild (E value); // Add left child } Figure 6.2 The general tree node and general tree classes.

Step by Step Solution

3.39 Rating (149 Votes )

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

class GTNode E value GTNode firstChild GTNode nextSibling public GTNodeE value thisvalue value thisf... View full answer

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 Practical Introduction To Data Structures Questions!