CSE 373, Winter 2018: Home

Upcoming due dates

Note: unless otherwise noted, all assignments are due at 11:30pm.

Calendar

Week 1
Wed, Jan 3: Intro, ADTs, generics

Suggested reading: Weiss 3.1, 3.2, 3.4 - 3.7; 1.4

Thur, Jan 4: Section 1: 143 review
Fri, Jan 5: Tradeoffs, adaption, abstractions, iterators

Suggested reading: See Wed, Jan 3

Note: Project 1 partner form due; course survey due

Week 2
Mon, Jan 8: Asymptotic analysis: motivation and intuition

Iterator code (zip file)

Suggested reading: Weiss 1.2, 2.1-2.4

Wed, Jan 10: Asymptotic analysis: formal definitions, loops, recursion

Suggested reading: See Mon, Jan 8

Note: Project 1 part 1 due

Thur, Jan 11: Section 2: asymptotic analysis
Fri, Jan 12: Modeling complex functions, binary search

Suggested reading: Weiss 4.1-4.3

Week 3
Mon, Jan 15: Martin Luther King day: no lecture
Wed, Jan 17: Binary search, BSTs

Suggested reading: Weiss 4.4

Note: Project 1 part 2 due

Thur, Jan 18: Section 3: more asymptotic analysis, AVL trees
Fri, Jan 19: AVL trees

Suggested reading: See Wed, Jan 17

Week 4
Mon, Jan 22: Hash tables: introduction, separate chaining

Suggested reading: Weiss 5.1 - 5.5

Wed, Jan 24: Hash tables: hashing

Suggested reading: See Mon, Jan 22

Note: Written homework 1 due

Thur, Jan 25: Section 4: AVL trees, hash tables
Fri, Jan 26: Hash tables: open addressing, wrap-up

Suggested reading: See Mon, Jan 22

Week 5
Mon, Jan 29: Memory and locality

Suggested reading: Weiss 4.7

Wed, Jan 31: B-trees
Thur, Jan 25: Section 5: Midterm review
Fri, Jan 26: Midterm

Note: the midterm is scheduled to take 80 minutes. See the exams page for more details.

Week 6
Mon, Feb 5: PriorityQueues and binary heaps

Suggested reading: Weiss 6.1 - 6.3

Wed, Feb 7: Floyd's buildHeap algorithm; divide-and-conquer and sorting

Suggested reading: Weiss 7.1-7.2, 7.5-7.8, and 10.2

I would prioritize reading Weiss 7.6, 7.7, and 10.2 in particular.

Thur, Feb 8: Section 6: Heaps; divide-and-conquer
Fri, Feb 9: More on divide-and-conquer and sorting

Suggested reading: see Wed, Feb 7

Note: project 3 partner selection form due

Week 7
Mon, Feb 12: Introduction to graphs

Suggested reading: Weiss 9.1

Wed, Feb 14: Graph traversal (BFS and DFS)

Suggested reading: Weiss 9.3.1, 9.6

Thurs, Feb 15: Section 7: Graphs
Fri, Feb 15: Pathfinding: Dijkstra's

Suggested reading: Weiss 9.3.2

Note: project 3, part 1 due

Week 8
Mon, Feb 19: President's day: no lecture
Wed, Feb 21: More on Dijkstra's algorithm

Suggested reading: Weiss 9.3.2 - 9.3.3

Thurs, Feb 15: Section 8: Shortest path algorithms
Fri, Feb 15: Topological sort; introduction to minimum spanning trees

Suggested reading: Weiss 9.2, 9.5

Note: project 3, part 2 due tomorrow (deadline changed to Sat)

Week 9
Mon, Feb 26: Minimum spanning trees: Prim and Kruskal

Suggested reading: Weiss 9.5

Wed, Feb 28: Kruskal's algorithm and disjoint sets

Suggested reading: Weiss 8.1 - 8.7

Thurs, Mar 1: Section 9: MSTs, technical interviews
Fri, Mar 2: Disjoint sets continued

Note: written homework 2 due

Week 10
Mon, Mar 5: P vs NP

Suggested reading: Weiss 9.7

Wed, Mar 7: P vs NP; reductions
Thurs, Mar 8: Section 10: Finals review
Fri, Mar 9: Assorted topics, final thoughts

Note: project 4 due tomorrow