Project Description:You are to implement a Set ADT using a singly linked list where your data structure in your class…

Project Description:
You are to implement a Set ADT using a singly linked list where your data structure in your class will look something like this:
Note that this is a singly linked list with a dummy head node. Each node has two fields: the object and the link. You shouldn’t assume that data elements are integers. Instead, they should be objects.
An element either belongs to a set or it does not. No duplicates are allowed.
Here are the standard operations you must build into you set class. Note there are no exceptions raised.
contain: returns Boolean value. Returns true if the given object is contained in the set and false otherwise.
remove: returns Boolean value. Returns true if the node containing the object is removed from the set and false otherwise.
addElement: returns Boolean value. Returns false if element not added because it is already in the set and true if the element is added.
size: returns an integer equal to the number of distinct objects are in the Set.
subsetOf: returns a Boolean value true if every element in set A is in set B and false otherwise.
isEqual: returns true if both sets contain the same elements where order in either set does not count.
union: if A, B, C are sets, has the form C = A.union(B). Union returns a Set that contains all the elements in set A and B, but only list duplicates once.
intersection: if A, B, C are sets, has form C = A.intersection(B) and returns a set containing only elements that are common to both A and B, but no duplicates.
complement: if A, B, C are sets, has form C = A.complement(B) and returns a set containing only elements that are in A but not in B.
toString: displays a message that indicates an object’s state. An object’s state is the data that is stored in the object’s fields at any giving moment.
Remember from your CS130 that the empty set is a set and the empty set is a subset of every set. If A={1, 3, 5, 7}, B={3, 4, 5}, D = {}, THEN

if C=A.union(B): then C={1, 3, 4, 5, 7};

if C=A.intersection(B): then C={3, 5};

if C=A.complement(B): then C={1, 7};

D.subsetOf(A) returns true; D.subsetOf(B) returns true; D.subsetOf(C) returns true and; D.subsetOf(D) also returns true.

A.subsetOf(B) returns false, but (A.intersection(B)).subsetOf(A) returns true
You may implement the Set using either a Node outside the Set class with all its getters and setters or the way we covered in class where the node is a private class of set.
You must write a test program to test you Set ADT. Remember that when you test subset, union, intersection and complement, test each method with at least the following five cases:

Case 1: A and B are equal but distinct sets, for example, A = {1, 2, 3}, B = {2, 1, 3}
Case 2: A and B are such that they have different sizes but one is a subset of the other, for example, A = {1}, B = {1, 2}
Case 3: A and B are non-empty and different in size but have common elements, for example, A = {1, 2, 3}, B = {2, 3, 4, 5}
Case 4: they are non-empty with nothing in common, for example, A = {1}, B = {2, 3}, and
Case 5: one is non-empty and the other empty.

Calculate your order
Pages (275 words)
Standard price: $0.00
Client Reviews
Our Guarantees
100% Confidentiality
Information about customers is confidential and never disclosed to third parties.
Original Writing
We complete all papers from scratch. You can get a plagiarism report.
Timely Delivery
No missed deadlines – 97% of assignments are completed in time.
Money Back
If you're confident that a writer didn't follow your order details, ask for a refund.

Calculate the price of your order

You will get a personal manager and a discount.
We'll send you the first draft for approval by at
Total price:
Power up Your Academic Success with the
Team of Professionals. We’ve Got Your Back.
Power up Your Study Success with Experts We’ve Got Your Back.
WeCreativez WhatsApp Support
Our customer support team is here to answer your questions. Ask us anything!
👋 Hi, how can I help?