Fun with algorithms; sorting, data structures and fun