Difference between revisions of "CISC220 F2021 Project"
Line 10: | Line 10: | ||
* Cryptography (encoding/decoding, "breaking" codes, [https://en.wikipedia.org/wiki/Rainbow_table rainbow tables]) | * Cryptography (encoding/decoding, "breaking" codes, [https://en.wikipedia.org/wiki/Rainbow_table rainbow tables]) | ||
* Cryptocurrency, blockchain (e.g., hash chains, hash trees) | * Cryptocurrency, blockchain (e.g., hash chains, hash trees) | ||
− | |||
You may work alone or as part of a pair. | You may work alone or as part of a pair. |
Revision as of 08:00, 18 November 2021
The final project is your opportunity to explore an advanced data structure topic that was NOT covered in class this semester.
The main focus here is to write C++ code which implements and/or applies a data structure and/or algorithm of your choosing. You may use STL or other APIs/libraries, but only in a supporting role. If you use *any* code written by someone else (looking at you, Github), then you must cite it and be completely clear about what you added or changed. I am primarily interested in the code that you write and what your whole program does. Potential topics:
- Red-black balanced binary trees
- Treaps
- Knight's tour
- k-d trees, nearest neighbor search
- Compression (text at the word/sentence level, image/video/audio)
- Cryptography (encoding/decoding, "breaking" codes, rainbow tables)
- Cryptocurrency, blockchain (e.g., hash chains, hash trees)
You may work alone or as part of a pair.
Send me an e-mail with your proposal and partner name, if applicable, as soon as possible so that I can give some feedback. As soon as I approve your proposal, you can pick a time slot for an in-person demo (not in front of the class) on Friday, December 10. Your code must also be submitted on this day.