CS252 Algorithms Monday, 10 October 2022 + Coming later today - PS 1 feedback/scores - Short programming assignment - PS 2 feedback/scores + PS1 & my sample proof - Some principles - Clarity, correctness, persuasiveness - Name things - Embrace mathematical notation--it's designed for this! - Outline, write, evaluate logical flow & clarity, rewrite - P1.1 solution walkthrough - basic strategy - things to name - turn that naming into an algorithm - correctness proof + Break for a couple minutes + 4.2, exchange arguments - What's going on in the 4.1 problem & proof? - What's going on in the 4.2 problem & proof? - What aspect of the 4.2 proof is an "exchange argument"? - How is this connected to greediness? + What's coming up? - Shortest paths (esp. Dijkstra) - Minimum spanning trees (Kruskal, Prim) + Graph coding assignment - dot/graphviz/... - think about how implementation is connected (or not) to complexity analysis in the book - my code, the assignment