This accessible and entertaining book provides an in-depth introduction to computational thinking through the lens of data structures a critical component in any programming endeavour. You'll learn how to work with more than 15 key data structures, from arrays, stacks, and queues, to caches, bloom filters, skip lists, and graphs. You'll also master linked lists by virtually standing in line at a cafe, hash tables by cataloguing the history of the summer Olympics, and QuadTrees by neatly organizing your kitchen cabinets, all while becoming familiar with basic computer science concepts, like recursion and running time analysis.