Programs I write to learn algorithms and data structures