Project 2: Singly-Linked List (JAVA) The purpose of this is to assess your ability to: Implement sequential search algorithms for linked list structures Implement sequential abstract data types using linked data Analyze and compare algorithms for efficiency using Big-O notation I need to implement a singly-linked node class in JAVA. Use your singly-linked node to implement a singly-linked list class that maintains its elements in ascending order.    The SinglyLinkedList class is defined by the following data: A node pointer to the front and the tail of the list Implement the following methods in your class: A default constructor             list myList A copy constructor             list myList(aList) Access to first element             myList.front() Access to last element             myList.back() Insert value                                   myList.insert(val) Remove value at front           myList.pop_front() Remove value at tail               myList.pop_back() Determine if empty                myList.empty() Return # of elements             myList.size() Reverse order of elements in list    myList.reverse() Merge with another ordered list     myList.merge(aList) Write a thorough test program for this class. Time analysis should be included.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter17: Linked Lists
Section: Chapter Questions
Problem 18SA
icon
Related questions
icon
Concept explainers
Question

Project 2: Singly-Linked List (JAVA)

The purpose of this is to assess your ability to:

  • Implement sequential search algorithms for linked list structures
  • Implement sequential abstract data types using linked data
  • Analyze and compare algorithms for efficiency using Big-O notation

I need to implement a singly-linked node class in JAVA. Use your singly-linked node to implement a singly-linked list class that maintains its elements in ascending order.   

The SinglyLinkedList class is defined by the following data:

  • A node pointer to the front and the tail of the list

Implement the following methods in your class:

  • A default constructor             list<T> myList
  • A copy constructor             list<T> myList(aList)
  • Access to first element             myList.front()
  • Access to last element             myList.back()
  • Insert value                                   myList.insert(val)
  • Remove value at front           myList.pop_front()
  • Remove value at tail               myList.pop_back()
  • Determine if empty                myList.empty()
  • Return # of elements             myList.size()
  • Reverse order of elements in list    myList.reverse()
  • Merge with another ordered list     myList.merge(aList)

Write a thorough test program for this class. Time analysis should be included. 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 5 steps with 2 images

Blurred answer
Knowledge Booster
Types of Linked List
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning