CS260 — Lectures
Week | Topics | Reading from Text | Homework |
---|---|---|---|
1 | Introduction to Python; Equivalence Relation, Asymptotic Behavior (Big-O, Dominance) | 1 | hw1 |
2 | Arrays (review), lists; stacks and queues; maps, Searching | 2 | hw2 |
3 | Trees; Huffman coding | 3 | hw3 |
4 | Sets, hash tables, dictionaries | 4.1 – 4.9 | hw4 |
5 | BSTs, Tries, Heaps (Priority Queues) | 4.10 – 5.3 | hw5 |
6 | (Midterm) 2-3 Trees | 5.4 | hw6 |
7 | Disjoint Sets, Return midterm, Intro to Graphs | 5.5, 6.1–6.2 | hw7 |
8 | Graphs - BFS, Dijkstra (SSSP), Floyd-Warshall (APSP), MST (Prim, Kruskal) | 6.3 – 6.4, 7.1 – 7.3 | hw8 |
9 | Graphs - DFS, Dag, SCC, Topological Sort, Bipartite Matching | 6.5 – 6.7, 7.3 – 7.5 | hw9 |
10 | Sorting, Solving Recurrence Relations | 8, 9 | None |
Submission
Homeworks are in 2 parts: written, and implementation (programming). The written work will be submitted as a PDF† to GradeScope . The practical (programming) work will be submitted on tux via submit.
Hand-written work will not be accepted.
Word Processors
Most word processors these days will publish to PDF. lyx is a WYSIWYG LaTeX creator, publishes to PDF. It's free, runs on Linux, Mac and Windows. Download from http://www.lyx.org/ . Good info can be found on wiki.lyx.org .
LaTeX
I have supplied an example LaTeX file. Instructions for compiling are in the header comments. Here is the resulting PDF.
You might also want to look at TexMaker. Not a WYSIWYG, I think, but, a helpful environment for editing tex files.
Markdown, with Math in LaTeX
Instead of learning a bunch of LaTeX, you can concentrate just on the math and algorithms, embed them in a Pandoc Markdown document. See CS260/Assignments/homework-example.md, which produces CS260/Assignments/markdown.pdf. Instructions for compiling are in the document.
If you must do your work by hand, scan it to PDF, then please mind the darkness, contrast, and resolution. I need to be able to read it, but I do not want a 10 MB file. Taking a photo of the page is not scanning it.