Revisiting some data structures and algorithms from my university days, and learn some new ones