Homework 8
Both team members should click here to accept the assignment:
This is the last homework assignment of the semester :-O
In this assignment, you will practice analyzing hash functions and implementing a hash table using separate chaining.
Let's Go!
Read
As usual, we encourage you to have the specifications open in a separate browser window or tab for reference while you code.
- Phase 1:
HashSet<T>
Stubs - Phase 2: Evaluating Hash Functions
- Phase 3: Constructor, Destructor,
swap()
,size()
, andbuckets()
- Phase 4:
insert()
,exists()
, andprintToStream()
- Phase 5: Rehashing
- Phase 6:
HashSet<T>
Performance Statistics - Written Questions
- Check Your Submission
Resources
As always, we encourage you to ask (and answer) questions on Piazza as you work!
Grading
Completing this assignment is worth 100 points, and will be graded as follows:
- 5 points: Planning (Completeness, not correctness)
- 13 points: Repository Status (Makefile, code compiles, correct files submitted, no
cpplint
errors) - 2 points: All Team Members Listed on Gradescope Submission
- 20 points: Coding Style
- 25 points: Writing Tests
- 30 points: Implementation Correctness
- 5 points: Hash-Function Choice Justification
(When logged in, completion status appears here.)