How your tostring traverses the tree

Assignment Help JAVA Programming
Reference no: EM131719475

Java Exercises

Requirements

 

The main goal of this assignment is to implement methods that perform heap operations.

 

Add a class named BinaryHeap to the project. This class supports the arrayrepresentation of binary max heaps. Generic code is optional. If you opt out generic, apply String values for data, and apply the compareTo( ) method for comparison.

 

The class shall contain the int type field manyItems as usual, and an array field to store the data. Add a constructor to the class such that it instantiates the array to an initial length (parameter).

 

Implement the add( ) method which in turn applies the upward reheapificationalgorithm.

 

Implement the removeRoot( ) method such that it applies the downward reheapification algorithm.

 

Add ensureCapacity ( ) and toString( ) to the class. You shall decide how your toString traverses the tree. Describe your choice in a comment attached to the method.

 

ImplementastaticmethodnamedbuildHeap().Themethodtakesanarrayof Strings for parameter (the parameter is not necessarily a heap). The method instantiates a String array to the length of the parameter array and constructs a heap on this array such that calling the add() method repeatedly, adds all the parameter elements one after each other to the new heap. The method must also work if the heap is empty. It is a precondition, however, that the base array of the heap is not null.

Note 1: The buildHeap( ) method will look familiar when you see it again as part of the heap sort algorithm. It will be a private helper method named makeHeap( ). See also makeHeap( ) in the book, p 656.

Determine the performance of the buildHeap method.

Note 2: You may follow the hints in the book for Programming Project #5, p672, and implement a second solution for buildHeap( ), which performs O(n) better than the recommended solution above.

 

Implementamethodtrim3()suchthatitremovesthethreelargestelements from this heap. The method should work (remove elements) in a sensible way even if the heap has no element, 1 element or 2 elements only.

 

Note that the largest element is obviously at the root. The second largest must be one of the two children of the root. The third largest is not necessarily the other child, it can be a grandchild of the root.

 

9. Add an application class to the project and test your methods. This class displays the heap array by calling the toString( ) method.

 

10. You may add more methods if you see it necessary, but you must have all the methods implemented as listed above.

 

It is recommended to add to the class the private methods below:

 

swap(), to exchange array entries at two given indices·

 

reheapUp(), to do the upward reheapification from a given index·

 

reheapDown(), to do the downward reheapification from a given index (make it·recursive)

 

These method simplify the implementation of the add() and removeRoot() methods, they are particularly useful if you want to implement a general remove() method (optional).

 

11.The words.doc file attached to the assignment can be used for testing purposes, but you can use your own choice of text. The text must have at least 40 different meaningful words, all pairwise different with respect to compareTo().

 

This is the word document:

 

a               A
be           Be
cat          Cat
door      Door
error     Error
four       Four
garage  Garage
home    Home
island   Island
jam       Jam
kick       Kick
lobby    Lobby
mouse Mouse
norm    Norm
otter    Otter
purr      Purr
queue  Queue
robin    Robin
silver    Silver
tally       Tally
urgent  Urgent
verb       Verb
willow   Willow
x-ray      X-ray
yard       Yard
zebra     Zebra

 

 

 

 

Reference no: EM131719475

Questions Cloud

Analyze the manner in which the phase would change : Analyze the manner in which the phase would change, based on the distribution of the organization and the associated distributed database design.
Why do some executives refuse to function as project sponsor : Why do some executives refuse to function as project sponsors?Can an executive be "forced" to function as a sponsor?
Company in field in which you have career interest : Select a company in a field in which you have a career interest and look up information on this firm in your library or on the Internet.
Differentiate explanatory variable and categorical variable : Can a variable be both of the following types? If so, give an example. An explanatory variable and a categorical variable.
How your tostring traverses the tree : You shall decide how your toString traverses the tree. Describe your choice in a comment attached to the method.
How does group membership affect leaders and leadership : How does group membership affect leaders and leadership?
Illustrating the distribution of the coins : Count how many of each kind of coin you have (pennies, nickels, and so on, or the equivalent for your country). Draw a pie chart illustrating the distribution.
Find the amount spent on textbooks in a semester : Suppose that the amount spent on textbooks in a semester for college students has a mean of $350 and a standard deviation of $100.
Business expenses and investment expenses : What is the difference between how Business Expenses and Investment Expenses are deducted by Individuals?

Reviews

Write a Review

JAVA Programming Questions & Answers

  Recursive factorial program

Write a class Array that encapsulates an array and provides bounds-checked access. Create a recursive factorial program that prompts the user for an integer N and writes out a series of equations representing the calculation of N!.

  Hunt the wumpus game

Reprot on Hunt the Wumpus Game has Source Code listing, screen captures and UML design here and also, may include Javadoc source here.

  Create a gui interface

Create GUI Interface in java programing with these function: Sort by last name and print all employees info, Sort by job title and print all employees info, Sort by weekly salary and print all employees info, search by job title and print that emp..

  Plot pois on a graph

Write a JAVA program that would get the locations of all the POIs from the file and plot them on a map.

  Write a university grading system in java

University grading system maintains number of tables to store, retrieve and manipulate student marks. Write a JAVA program that would simulate a number of cars.

  Wolves and sheep: design a game

This project is designed a game in java. you choose whether you'd like to write a wolf or a sheep agent. Then, you are assigned to either a "sheep" or a "wolf" team.

  Build a graphical user interface for displaying the image

Build a graphical user interface for displaying the image groups (= cluster) in JMJRST. Design and implement using a Swing interface.

  Determine the day of the week for new year''s day

This assignment contains a java project. Project evaluates the day of the week for New Year's Day.

  Write a java windowed application

Write a Java windowed application to do online quiz on general knowledge and the application also displays the quiz result.

  Input pairs of natural numbers

Java program to input pairs of natural numbers.

  Create classes implement java interface

Interface that contains a generic type. Create two classes that implement this interface.

  Java class, array, link list , generic class

These 14 questions covers java class, Array, link list , generic class.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd