$29
In this homework you will create an ExperimentList class to keep track of some machine learning experiments and their results. A machine learning experiment consists of the following instance variables:
setup (String): explains the experimental setup
day(integer): represents the day of start
time(Time): represents the time of start
completed(boolean): indicates whether it is completed or not
accuracy(float): represents the output (not a valid value if the experiment is not completed)
Your class should implement the basics of a single linked list to keep the experiments. In order to speed up add and remove operations, an additional list structure should be defined in the level of days.
Your class should support the following functionality:
addExp(Experiment): insert experiment to the end of the day
getExp(day, index) : get the experiment with the given day and position
setExp(day, index, ) set the experiment with the given day and position
removeExp(day, index): remove the experiment specified as index from given day
listExp(day): list all completed experiments in a given day
removeDay(day): remove all experiments in a given day
orderDay(day): sorts the experiments in a given day according to the accuracy, the changes will be done on the list
orderExperiments(): sorts all the experiments in the list according to the accuracy, the original list should not be changed since the day list may be damage
Additional requirements are listed as follows:
ExperimentList class should be iterable.
Do not use any class from Java Collections library, each part should be written from scratch.
Write a driver class (i.e. Main class) which tests all the functionality of your ExperimentList class.
Include a table in your report which shows the complexity of all the functions and give details on how you calculate it.
Notes:
Submit your homework as studentnumber.zip and which includes the following files:
intelliJ project file
Report.pdf
Javadoc
The report must be in format “ReportFormat.doc” (moodle)
The implementations will be 75 points and the report is 25 points out of 100
Submit your homework until the last submission date
You can ask your questions via email: asturan@gtu.edu.tr or by coming to office 118