HW13: ArrayDictionary Revisited due Wed 01 May 10:00

\begin{purpose}
In this assignment you will:
\begin{itemize}
\item Inherit f...
...o sort and search a container
of custom objects.
\end{itemize}
\end{purpose}

Allowed and Disallowed Resources

In completing this assignment you MAY use/access the following resources:

You may NOT use/access:

Failure to abide by these guidelines will result in a zero for the assignment and the incident will be reported to the university provost as a violation of the university academic integrity policy. A second incident of academic dishonesty (whether from this course or another computer science course) will result in an F in the course.

Description

When this program is finished it should produce the same results as the previous assignment. It will differ from the previous assignment in its implementation:

Suggested steps:

  1. Complete all steps from the lab day assignment.

  2. Look at this example of how to sort an ArrayList:

    https://www.geeksforgeeks.org/collections-sort-java-examples/

    REMEMBER: ArrayDictionary IS-A ArrayList. Do the import and call the sort method as the final line of the constructor. (Test and commit).

  3. Look at this example of how to do a binary search in a sorted ArrayList:

    https://www.geeksforgeeks.org/collections-binarysearch-java-examples/

    REMEMBER: ArrayDictionary IS-A ArrayList. Uncomment the countAnagrams() method and replace its call to your old binary search function with a call to Java's built-in function. You'll also need to change notation for searching forward and backward in the list to count. Test and commit.

  4. Uncomment displayBigAnagramFamilies() and change notation as needed.

  5. Adjust formatting, documentation, etc., and then commit and push.

Grading

The assignment will be graded according to the following criteria:
Correctness 16 pts
Documentation 2 pts
Conventions 2 pts
Version Control 2 pts
Total 22 pts

Your program should be completely working and should follow all of the programming conventions named in class and explained in http://josephus.hsutx.edu/classes/all/javaconventions/ (including the use of comments that conform to the JavaDoc guidelines).

The instructor will grade your work based on what you have pushed to the hosted homework repository you have shared. For all assignments the program is due before the beginning of class on the due date. Repositories that show a commit time after that time will be graded as late.