Milestone map
Milestone map
2 milestones
Do the course work in public
3–5 weeks (9–10 hrs/week)
Take Data Structures & Algorithms II: Binary Trees, Heaps, SkipLists and HashMaps for free and do your own binary search tree, heap, skip list and hash map in Java, each with tests. Keep everything in one public repo or notebook as you go. Certificates and graded tracks cost money. Audit is free; you never need the certificate here.
Proof required
Link your public repo or notebook with your own binary search tree, heap, skip list and hash map in Java, each with tests, and a screenshot or log showing the self-check passed.
What gets checked
- Each structure passes tests, including duplicates and deletes.
- The hash map grows when it gets full.
- Running times are stated and checked with timings.
Common mistakes
- Copying posted answers: verifiers read the history.
- Skipping the self-check, then asking for review too early.
Powstik Guide
A public repo or notebook with your own binary search tree, heap, skip list and hash map in Java, each with tests.
Steps
- Make a public repo or notebook first.
- Do one unit at a time and commit after each.
- Run the self-check: Do the exercises for binary search trees, priority queues and hash tables on the free book site, and test on its sample data.
- Write a short README: what is here and how to run it.
- Ask three people who know the topic to check it.
Template
README Course: Data Structures & Algorithms II: Binary Trees, Heaps, SkipLists and HashMaps (Georgia Tech on edX) What is here: How to run it: Self-check result: What was hardest:
What gets sent back
- No history, just one big upload.
- Self-check not shown.
- Code that does not run from the README.
Resources
Foundationstart here
Depthgo deeper
What a verifier looks for
- Each structure passes tests, including duplicates and deletes.
- The hash map grows when it gets full.
- Running times are stated and checked with timings.
- Ask one question about a choice in the code; the answer should be clear.
You'll sign in first, then come straight back here.
Speed up a slow program
1–3 weeks (5–8 hrs/week)
Use what you learned. Make a before-and-after change to a program of yours, swapping a list search for your hash map or heap, with timings. Keep it small enough to finish in about two weeks.
Proof required
Link a before-and-after change to a program of yours, swapping a list search for your hash map or heap, with timings, with a README that says how to run or read it.
What gets checked
- Timings before and after are measured on the same data.
- Results stay the same after the change.
- The write-up explains why it got faster.
Common mistakes
- A project too big to finish.
- A demo that only works on your machine.
Powstik Guide
A before-and-after change to a program of yours, swapping a list search for your hash map or heap, with timings.
Steps
- Write one line: what it does and for whom.
- Build the smallest version that works.
- Test it on someone else's machine or with someone else reading it.
- Write the README.
- Ask three people to check it.
Template
README What it does: Who it is for: How to run it: What I would do next:
What gets sent back
- Does not run from the README.
- Not clearly the person's own work.
- Claims more than it does.
Resources
Foundationstart here
Depthgo deeper
What a verifier looks for
- Timings before and after are measured on the same data.
- Results stay the same after the change.
- The write-up explains why it got faster.
- Check that the work is the person's own.
You'll sign in first, then come straight back here.