In this project, you will be implementing data structures that we've briefly talked about in class. We will use throughout the rest of the quarter as building blocks for bigger programs and more complex data structures.
This assignment has two parts. Part 1 is due on Wednesday, July 10 at 11:59pm and part 2 is due on Thursday, July 18 at 11:59pm.
Here are some baseline expectations you should meet in all projects:
Follow the course collaboration policies.
DO NOT import or use any classes from
java.util.*
. There are only two exceptions to this rule:
You may import and use the following classes:
java.util.Iterator
java.util.NoSuchElementException
java.util.Objects
java.util.Arrays
You may import and use anything from java.util.*
within your testing code.
DO NOT make modifications to instructor-provided code (unless told otherwise). If you need to temporarily change our code for debugging, make sure to change it back afterwards.
Throughout this site, you will run into some blue boxes. You can expand or collapse these boxes by clicking on them.
For example:
You'll be writing code in part 1.
Part 0: Getting started, more git (pulling and merging), and pair programming
Part 1: Testing, doubly linked lists and basic dictionaries
Due Wednesday, July 10 at 11:59pm.
Submit by pushing your code to GitLab. If you intend to submit late, fill out this late submission form when you submit.
Part 2: Experiments and analysis
Due Thursday, July 18 at 11:59pm.
Submit by pushing your code to GitLab and also submit to Gradescope If you intend to submit late, fill out this late submission form when you submit.