/home/gtowell/Public206/a6/DoubleLinkedList.javaIt is also available here The tests should be modelled on the tests for stack and queue that were discussed in class. You will certainly need more tests than in those examples, if only because there are more public methods. Generally, every public method should have sufficient tests to demonstate that it works correctly. For some methods a single test case will suffice. For other methods, you might need many more test cases. For example, consider addFirst. You will at least need a test case to handle each of the return points from this function (i.e., if the linked list is empty and if the linked list is not empty). (Background: There are programmers whose entire job is to come up with a set of cases that are sufficient to verify that things work correctly. There is a whole software development approach called test-driven design that starts by defining (and writing) test cases along with the correct output. Then software is developed to satisfy those cases.) As to the other part of the assignment, for most of the methods which use iteration, replacing that iteration with recursion will require a private recursive method. In some cases, that recursive method will naturally be over the entire iterative method. In other cases, you should consider writing a recursive method that only does the small, iterative part of the original method. Hint: you can find all of the iteration that needs to be replaced by searching for for and while.
The following steps for submission assume you created a folder named AssignmentN in the directory /home/YOU/cs206/ and that folder contains all of your code.