CSE 222/505 Homework 3 List abstract data structure

$30.00

Category: You will Instantly receive a download link for .zip solution file upon Payment || To Order Original Work Click Custom Order?

Description

5/5 - (2 votes)

PART 1:
In this homework, reuse the same scenario of Homework 1 and implement the same system
using several implementations of the List abstract data structure.
• You should complete the ArrayList and LinkedList implementations in the textbook.
• You should implement a HybridList class that keeps a LinkedList as a component and
the elements stored in the LinkedList are ArrayLists. The number of elements in each
ArrayList should be less than MAX_NUMBER. When the number of elements in an
ArrayList exceeds MAX_NUMBER a new ArrayList should be generated in the
LinkedList. When there is no element in an ArrayList it should be removed from the
LinkedList.
Use
• LinkedList in the textbook for information about branches
• ArrayList in the textbook for users of the automation system
• HybridList you implemented for the furnitures
PART 2:
Analyze the time complexity (in most appropriate asymptotic notation) of all methods in
your implementation of automation system for this homework. Attach the code just before
its analysis.
RESTRICTIONS:
– Use ArrayList and LinkedList
– Can be only one main class in project
– Don’t use any other third part library
GENERAL RULES:
– For any question firstly use course news forum in Moodle, and then the contact TA.
– You can submit assignment one day late and will be evaluated over sixty percent (%60).
TECHNICAL RULES:
– You must write a driver function that demonstrates all possible actions in your homework. For
example, if you are asked to implement an array list and perform an iterative search on the
list then, you must at least provide the following in the driver function:
o Create an array list and add items to the list. Append items to head, tail, and k
th index
of the list.
o Perform at least two different searches by using two items in the list and print the
index of the items.
o Perform another search with an item that isn’t in the array list and inform the user
that the item doesn’t exist in the array list.
o Delete an existing item from the list and repeat the searches.
o Try to delete an item that is not on the array list and throw an exception for this
situation.
The driver function should run when the code file is executed.
– Implement clean code standards in your code;
o Classes, methods and variables names must be meaningful and related with the
functionality.
o Your functions and classes must be simple, general, reusable and focus on one topic.
o Use standard java code name conventions.
REPORT RULES:
– Add all javadoc documentations for classes, methods, variables …etc. All explanation must be
meaningful and understandable.
– You should submit your homework code, Javadoc and report to Moodle in a
“studentid_hw1.tar.gz” file.
– Use the given homework format including selected parts from the table below:
Detailed system requirements X
The Project use case diagrams (extra points) X
Class diagrams X
Other diagrams
Problem solutions approach X
Test cases X
Running command and results X
GRADING :
– No OOP design: -100
– No interface: -95
– No method overriding: -95
– No error handling: -50
– No inheritance: -95
– No polymorphism: -95
– No javadoc documentation: -50
– No report: -90
– Disobey restrictions: -100
– Cheating: -200
– Your solution is evaluated over 100 as your performance.
CONTACT :
– Teaching Assistant : Başak Karakaş
– bkarakas2018@gtu.edu.tr