---
# System prepended metadata

title: Coursework management

---

# Coursework management

## Design & Analysis of Algorithms ECS 222A


- [Planner schedule and recordings](https://canvas.ucdavis.edu/courses/562076/pages/planned-schedule-and-recordings)
- [Syllabus](https://canvas.ucdavis.edu/courses/562076/assignments/syllabus)
- [Gradescope](https://www.gradescope.com/courses/258761)
- [Final Project](https://canvas.ucdavis.edu/courses/562076/assignments/669058)
- [Lecture Slides for Algorithm Design](https://www.cs.princeton.edu/~wayne/kleinberg-tardos/)

---


### Lectures

- **Week 1: Divide and Conquer**
    - **Lecture 1: 3/29 Intro, and review**
        - [Tiny Math Primer](https://drive.google.com/file/d/1NyyYnK21z4g7Cn9nelwFm574Ez99v009/view?usp=sharing)
        - Asymptotic Analysis: [Big-O, limit lemma theorem Introduction to Divide and Conquer solving recurrences via ](https://drive.google.com/file/d/1Ndc04MKD1DzUX2QXHWlKTONL18KZD36k/view?usp=sharing)
        - [substitution  (Links to an external site.)](https://drive.google.com/file/d/1XmIuHTf1TDfxNUJ8DxTLACF9vF0Hq_C9/view?usp=sharing)
        - [unwrapping/recurrence tree method  (Links to an external site.)](https://drive.google.com/file/d/1g9yi1pfN9TR9M2fViR-FBiyWH5wWHbkm/view?usp=sharing)
        - [Masters theorem](https://drive.google.com/file/d/1_NR16nOXPTuRVZNvsxhtqBKlQlVGTyyo/view?usp=sharing)
    - **Lecture 2: 3/31**
        - [Deterministic selection in linear time  (Links to an external site.)](https://drive.google.com/file/d/13vDhBinGKVU2XX3Q4E4xyIqk5xvuFA_8/view?usp=sharing)



---

## Quizes

### Quiz 1

**Think of something like that:**
A disorganized carpenter has a mixed pile of  n   nuts and  n   bolts. The goal is to find the corresponding pairs of nuts and bolts. Each nut fits exactly one bolt and each bolt fits exactly one nut. By fitting a nut and a bolt together, the carpenter can see which one is bigger (but the carpenter cannot compare two nuts or two bolts directly). Design an algorithm for the problem that uses  nlog n   compares (probabilistically).

- **Some resources**
    - http://seanzhou1023.blogspot.com/2017/04/quiz-6-princeton-algorithm.html
    - https://github.com/ekalachev/nuts-and-bolts
    - http://www.wisdom.weizmann.ac.il/~naor/PUZZLES/nuts.html
    - https://www.geeksforgeeks.org/nuts-bolts-problem-lock-key-problem/


```
Quiz 1: 4/5 
Quiz 2: 4/12 
**Midterm 1: 4/26**
Quiz 3: 5/3 
Quiz 4: 5/10 
Quiz 5: 5/17 
**Midterm 2 : Last day of class 6/2**
```

---

## Theory of Computation

- [Syllabus](https://canvas.ucdavis.edu/courses/556243/assignments/syllabus)

## Book Chapters
-   [chapter 1: PrologueLinks to an external site.](https://video.ucdavis.edu/playlist/details/1_6f35d59n)
-   [chapter 2: The BasicsLinks to an external site.](https://video.ucdavis.edu/playlist/details/1_92gxymmw)
-   (There are no lectures for chapter 3.)
-   [chapter 4: Needles in a Haystack: The Class **NP**Links to an external site.](https://video.ucdavis.edu/playlist/details/1_tc2y5uwz)
-   [chapter 5: Who is the Hardest One of All? **NP**-CompletenessLinks to an external site.](https://video.ucdavis.edu/playlist/details/1_7rjn2t74)
-   [chapter 6: The Deep Question: **P** vs. **NP**Links to an external site.](https://video.ucdavis.edu/playlist/details/1_ffeye37x)
-   [chapter 7: The Grand Unified Theory of ComputationLinks to an external site.](https://video.ucdavis.edu/playlist/details/1_jb9526ok)
-   [chapter 8: Memory, Paths, and GamesLinks to an external site.](https://video.ucdavis.edu/playlist/details/1_3x0aawln)

### Live Lectures
1a: [Lec 1a](https://ucdavis.zoom.us/rec/share/JXlnrYNJ1En4ryx1_ip_0nDrMru0GaGn7zmomWZaZjCj5oLoUTUYcHGG0emNCSJw.8GI5peokc3VZcPuT)

1c: [Lec 1c](https://ucdavis.zoom.us/rec/share/EsMILy8Nvngt6aUByQScDtKMlyXtGsn_CJ8PJHVCvkWFnxCXp6bSzNnIX0-hWxgC.mANNLQbNK8sRxrbM)

2a: [Lec 2a](https://ucdavis.zoom.us/rec/share/O-7_7ftD3kQNIXMYwUsJHSMvtU4pqq_CmFVWK28xDzA2adTZ0M-N55iAh7enhLru.2oC9hhW4XUY73x2A)


### Lectures

 - [lecture-schedule](https://canvas.ucdavis.edu/courses/556243/pages/lecture-schedule)

---

## Software Engineering

### Lectures

