Syllabus
Teaching objectives:
- Functional understanding of major data structures (stack, queue, list, map, tree)
- Can write node-based and array-based implementations
- basic text-based computing (shell commands, text editors, vcs)
- Project management individually and in groups with version control
- Competition ready and experienced
Course goals:
- Challenging and rigorous – a step up to advanced
- Connected to real-world problems and commonly used solutions
- Clearly assessed
Schedule:
9/9 |
9/10 |
9/11 | ||
rohash |
9/15 linux assignment given |
9/16 |
9/17 |
9/18 |
9/21 linux hunt due |
9/22 recursion intro |
yokip |
9/24 |
9/25 |
9/28 |
9/29 |
9/30 |
10/1 |
10/2 recursion due |
10/5 algorithmic complexity intro |
10/6 |
10/7 |
10/8 |
10/9 algorithmic complexity due |
columbus day |
pro dev |
10/14 collections intro |
10/15 |
10/16 |
10/19 collections due |
10/20 linked structures intro |
10/21 |
10/22 |
report writing |
10/26 linked structures due |
10/27 trees intro |
10/28 |
10/29 |
10/30 |
11/2 trees due |
11/3 hash intro |
11/4 |
11/5 |
11/6 |
11/9 hash due |
11/10 maps intro |
11/12 |
11/13 |
report day |
11/16 maps due |
11/17 graphs intro |
11/18 |
11/19 |
11/20 |
11/23 |
11/24 graphs due |
thanksgiving |
other important stuff
- Academic Integrity
- Competitions
- Labs
todo
- make a github account (give it to josh)
- get your linux password (from josh)