Robert Sedgewick has the slides for a talk, Algorithms for the Masses on his web site.

My favorite slide is the one titled “O-notation considered harmful” — Sedgewick observes that it’s more useful to say that the running time of an algortihm is ~aNc (and back this up with actual evidence from running the algorithm) than to have a theorem that it’s O(Nc) (based on a model of computation that may or may not be true in practice).

The serious point of the talk, though, is that everyone should learn some computer science, preferably in the context of intellectually interesting real-world applications. This is what Sedgewick is doing in his Princeton course and in his book with Kevin Wayne, Algorithms, 4th edition, which I confess I have not read. There’s a Coursera course, in six-week parts, starting in August and November respectively. For a lot of the heavy-duty mathematics you can see Sedgewick’s book with Flajolet, Analytic Combinatorics, a favorite of mine from my grad-school days. There’s even a Coursera course: 5-week part 1 in February 2013 and 5-week part 2 in March 2013.

About these ads