mikeizbicki / cmc-csci046

CMC's Data Structures and Algorithms Course Materials
55 stars 155 forks source link

Leetcode Extra Credit #519

Open mikeizbicki opened 1 year ago

mikeizbicki commented 1 year ago

My grading philosophy is that if you have mastered the material, then you should get a good grade. Therefore, I am providing an opportunity for people to demonstrate that they have mastered the material even if their grades on homeworks are not what you hoped.

We will use https://leetcode.com for this extra credit, since this is a popular framework for interviewing new grads at top tech companies. To learn more about leetcode, you can visit these reddit posts in /r/cscareerquestions

  1. Why Leetcode is a thing, and why you (probably) shouldn’t mind it as much as you do
  2. A LeetCode Grinding Guide

For this extra credit, I will award 1 point for completing a MEDIUM problem, and 4 points for completing a HARD problem. These points will be applied to a single assignment, and they cannot give you more than full credit on the assignment. Furthermore, you can get credit for at most 2 MEDIUM problems. Thus, for example, if you have two assignments where you earned 14/16, and you want to bring them up to full credit (16/16), then you would have to complete 2 separate HARD problems, or 1 HARD problem and 2 MEDIUM problems.

There are many problems on leetcode that you are not yet prepared to solve (you would need to take CS148: Graph Algorithms). Some recommended problems that you are in a position to solve are:

https://leetcode.com/problems/recover-binary-search-tree/

https://leetcode.com/problems/unique-binary-search-trees-ii/

https://leetcode.com/problems/serialize-and-deserialize-binary-tree/

https://leetcode.com/problems/height-of-binary-tree-after-subtree-removal-queries/

https://leetcode.com/problems/vertical-order-traversal-of-a-binary-tree/

To get the extra credit, you must demo your solution to me in person. You may not collaborate with other students on these assignments, nor may you reference solutions for the problems.

mikeizbicki commented 1 year ago

I'm extending the leetcode extra credit so that you can makeup points on any assignment (e.g. labs / homeworks / quizes), and not just the homeworks. As before, however, the points from one leetcode problem cannot be spread across multiple assignments.

jasminextan commented 1 year ago

Is there a preferred time for us to demo this for you? Should we come to office hours or set up a separate appointment?

mikeizbicki commented 1 year ago

Office hours/lab/after class are all fine times. I'll have occasional availability for office hours during the next couple of weeks (I'll post a detailed schedule when I know more). I won't be available for other appointments.