Talks

This page lists some of the talks/guest lectures I've given, along with the lecture slides as a PDF.

2012
Darts, Dice, and Coins
ACM Tech Talk, Stanford University

A survey of the algorithms from my Darts, Dice, and Coins article.

Slides

2011
Evil Hangman
Nifty Assignments Panel, SIGCSE 2011

An overview of the "Evil Hangman" assignment for the Nifty Assignments panel.

Slides

Fun With Number Systems
Colloquium, Cornell University

An exploration of two classic problems - the "odd ball" problem and iteratively listing permutations - using specialized number systems.

Slides

Introduction to Graphs
CS2110, Cornell University

An introduction to graphs and graph searches.

Slides

Demystifying Smoothsort
ACM Tech Talk, Stanford University

An introduction to the smoothsort algorithm.

Slides

2010
Algorithmic Analysis and Sorting, Part One
CS106B Guest Lecture, Stanford University

An introduction to algorithmic analysis, big-O notation, and sorting algorithms. Part one of two.

Slides

Algorithmic Analysis and Sorting, Part Two
CS106B Guest Lecture, Stanford University

Continuation of Part One. Mergesort and recurrence relations. Quicksort, along with runtime analysis. Introduction to hybrid sorts, including introsort. Concludes with a brief foray into bogosort.

Slides

2009
Template Metaprogramming in C++
CS242 Guest Lecture, Stanford University

An introduction to template metaprogramming in C++, including applications and theoretical results.

Slides

C++ sans CS106B
CS106B Guest Lecture, Stanford University

A quick tour of the STL and C++ outside of Stanford's CS106B class.

Slides