--%>

create a BottomUpTwoThreeFourTree class

  • You will need to create a BottomUpTwoThreeFourTree class, with a BottomUpTwoThreeTreeFourTree constructor which keeps no parameters.
  • BottomUpTwoThreeTreeFourTree will require an insert(int x) method, which will insert the value x into your tree. For this tree, duplicate insertions should be discarded. That is, if I insert a value into the tree which is already in the tree, do not change your tree. As discussed in class, if a node needs to split, the value passed up to the parent should be the median value of the three keys in the node, before the 4th key is added.
  • BottomUpTwoThreeFourTree will need a search(int x) method, which will search for the value x in your tree. The method should return a String, formatted as follows. If the value x is in the tree, it will reside in a node with either one, two, or three keys. For a one key node, the string will just be that node's key as a String. it is a two key node, the string should be the two values, in increasing order, with a single space between them. Thus, three keys should be returned with a single space between each pair, in increasing order. Example: if we are searching for the number 17, and it is a key alone in a node, the search function should return "17". If it is in a node with 35, you should return "17 35". If it is in a node with 10, you should return "10 17". And, if it in a node with keys 10 and 35, you should return "10 17 35". Note, there is no space after the last key value.

    If the value searched for is not in the tree, your search must have terminated at a leaf node. In that case, print the contents of that leaf node, with the same formatting described above. That is, if 17 is not in the tree, and you end in a node that contains keys 18 and 20, return "18 20".

  • You require to submit your own JUnit tests as well, again in a file with a name ending in Test.java or Tests.java. Your main grade will be based on (a) how well your tests cover your own code, (b) how well your code does on your tests, and (c) how well your code does on MY tests. If you fail even one of my tests, I will set up my tests to make sure that you fail many of them. If you know that your code has an error, it is hard to consider your code as "working".

 

 

   Related Questions in Programming Languages

  • Q : Write a program using simple loop

    Objective:  The purpose of this problem is to gain experience with the principles necessary to write a program using simple loop, decision processing, counters and accumulators Save the Barns, a bi-partisan po

  • Q : ID of TC Trustcenter Publisher and

    For how long are ID of TC Trustcenter Publisher and certificates of developer valid?

  • Q : Static and dynamic modeling in

    Illustrate in brief the term static and dynamic modeling in programming?

  • Q : Define Identifiers Define Identifiers

    Define Identifiers and their naming convention in brief?

  • Q : Define Static nested class Static

    Static nested class: It is a nested class with static reserved word in its header. Dissimilar inner classes, objects of static nested classes contain no enclosing object. They are as well termed as nested top-level classes.

  • Q : Explain While loop While loop: It is

    While loop: It is one of Java's three control structures employed for looping. The other two are: do loop and for loop. The while loop comprises of a Boolean expression and a loop body. The condition is tested prior to the loop body is entered for the

  • Q : What is Process Process : It is an

    Process: It is an individual thread-of-control to which an execution time slice is assigned by the operating system.

  • Q : Define Null reference Null reference :

    Null reference: A value utilized to mean, `no object'. Employed whenever an object reference variable is not referring to the object.

  • Q : Explain the COM components Explain the

    Explain the COM components?

  • Q : Define Number of Threads Number of

    Number of Threads: Threads can be a useful abstraction and implementation mechanism to partition independent program actions. However, when there is coordination (or interference) between these threads, the required synchronization mechanisms increase