Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write a C++ program for this Part - 1: Implement a Circular linked list ADT to store a collection of doubles. Part - 2: Implement

Write a C++ program for this

Part - 1: Implement a Circular linked list ADT to store a collection of doubles.

Part - 2: Implement a Double linked List ADT to store a collection of integers.

(You are allowed to extend the demo code posted on GitHub for this homework). Make sure to provide an interactive user interface to test these new functions in the main() for grader . Your ADT will include the following member functions:

--- a default constructor

--- the "big-3": destructor, copy constructor and overloaded assignment operator

1. a member function pushFront(data) that inserts a node with data at the front of the list

2. a member function pushBack(data) that appends a node with data at the back of the list

3. a member function popFront() that removes first node of the list.

4. a member function popBack() that removes last node of the list.

5. a member function insert(index, val) that inserts a new node with value "val" at a specific position mentioned by the index argument.

6. a member function deleteDuplicates(val) that deletes a node with that number and all its copies from the list, where these copies can be located anywhere in the list.

7. a member function mtoLastElement(M) that returns Mth to the last element of a list such that when M = 0, the last element of the list is returned.

8. a member function size() that returns the size of the list.

9. an overloaded put operator (<<) to print out all the data items stored in a linked list. Note that you are recommended to overload this operator as a friend function of the LinkedList class.

10. a member function reverseList() that reverses a linked list without recreating a temporary copy of this linked list. In other words, your function CAN NOT use the 'new' operator. Here is an example, if a list contains the following data items, 3 -> 5 -> 1 -> 7; this reverse() function will change the list to 7 -> 1 -> 5 -> 3.

11. a MemberFunction mergeLists(linkedList& one, linkedList& two) which will create a new list that contains the elements of two lists in sorted order(ascending). Assume the two lists are in sorted order for this case

Ex: one: 1 -> 3 -> 7 -> 25 -> 50 (sorted)

two: 5 -> 9 -> 11 - > 12 -> 29 (sorted)

result list : 1 -> 3 -> 5 -> 7 - > 9 -> 11 -> 12 -> 25 -> 29 -> 50 (Sorted)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Pro PowerShell For Database Developers

Authors: Bryan P Cafferky

1st Edition

1484205413, 9781484205419

Students also viewed these Databases questions