
Concept explainers
Java coding
ADT Binary Search tree:
A binary search tree can be used to store a list of comparable objects. In a generic binary search tree class, constrain E(the type parameter) to be the class types that implement Comparable interface. In the class header, add the interface as the upper bound to E.
public class BinarySearchTree<E extends Comparable<E>>
Specifications of the ADT binary search tree:
• Construct a binary search tree.
• Retrieve the root of this tree.
• Change the root of this tree if supported.
• Check if this tree is empty.
• Make this tree empty.
• Search an element in this tree.
• Insert an element into this tree.
• Delete an element from this tree.
• Construct an iterator of this tree.
• Get a reference to the element of a node.
You should design these operations in bold in a super class and put the rest in a sub class. To support this class, the following classes must be designed and implemented:
• Generic tree node class: a tree node contains an element, a left reference, and a right reference.
• Generic tree iterator class: a class implementing Iterator interface and provides traversal operations.
• Tree exception class: used for the abnormal situations from some tree operations.

Trending nowThis is a popular solution!
Step by stepSolved in 2 steps

- Design an implementation of an Abstract Data Type consisting of a set with the following operations: insert(S, x) Insert x into the set S. delete(S, x) Delete x fromthe set S. member(S, x) Return true if x ∈ S, false otherwise. position(S, x) Return the number of elements of S less than x. concatenate(S, T) Set S to the union of S and T, assuming every element in S is smaller than every element of T. All operations involving n-element sets are to take time O(log n).arrow_forwardDisjointSet Class Implementation of this class is done in a1_partc.py A DisjointSet class represents a disjoint set which is a set of sets where every element can only belong to exactly one set. When a DisjointSet class is instantiated it is passed nothing and contains no sets. It make an empty Python dictionary which will be used to store the elements of the DisjointSet. The DisjointSet has the following member functions: def make_set(self,element) If element already exists within the Disjoint set, the function does nothing and returns false. If element does not exist in the DisjointSet, this function will add it to the DisjointSet by: make a new SetList object containing only one node, with the element as only value in the SetList adding a new dictionary entry where element is the key and a reference to the node containing element as the value return true Suppose we ran the following code: ds = DisjointSet() ds.make_set("cat") ds.make_set("dog") ds.make_set("fish")…arrow_forwardJava (Generic Types) - Zip Code and Populationarrow_forward
- Simple JAVA linkedlist code implementation please help and complete any part you can - Without using the java collections interface (ie do not import java.util.List,LinkedList, Stack, Queue...)- Create an implementation of LinkedList interface- For the implementation create a tester to verify the implementation of thatdata structure performs as expected Build Bus Route – Linked List- Your task is to:o Implement the LinkedList interface (fill out the implementation shell)o Put your implementation through its paces by exercising each of themethods in the test harnesso Create a client (a class with a main) ‘BusClient’ which builds a busroute by performing the following operations on your linked list:o§ Create (insert) 4 stations§ List the stations§ Check if a station is in the list (print result)• Check for a station that exists, and onethat doesn’t§ Remove a station§ List the stations§ Add a station before another station§ List the stations§ Add a station after another station§ Print the…arrow_forwardA) Write a generic Java queue class (a plain queue, not a priority queue). Then, call it GenericQueue, because the JDK already has an interface called Queue. This class must be able to create a queue of objects of any reference type. Consider the GenericStack class shown below for some hints. Like the Stack class below, the GenericQueue should use an underlying ArrayList<E>. Write these methods and any others you find useful: enqueue() adds an E to the queue peek() returns a reference to the object that has been in the queue the longest, without removing it from the queue dequeue() returns the E that has been in the queue the longest, and removes it from the queue contains(T t) returns true if the queue contains at least one object that is equal to t *in the sense that calling .equals() on the object with t the parameter returns true.* Otherwise contains returns false. size() and isEmpty() are obvious.arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





