Data Structures and Algorithms for Game Developers

I recently read Data Structures and Algorithms for Game Developer’s by Allen Sherrod which is a great introductory book for those interested in game development. Though the title at first seemed a bit threatening, I found myself comfortable reading it shortly after opening the book. At first Data Structures and Algorithms can seem intimidating, but each can be explained in a simpler manner.
Data Structure – defines how data is arranged in memory
Ex. arrays, link lists, queues, graphs, trees, and hash tables
Algorithm – code that manipulates data in a data structure(s)
Ex. recursion, deletions, sorting, searching, compression
Though the code in the book is written in C++, I was reading it to gain understanding to apply to Actionscript 3. The syntax is similar enough to understand if you have an intermediate to advanced knowledge of AS3 (and likely some other programming languages). I learned a great deal about how games are managed at a deeper and structural level as a result.
Some of the most beneficial things I learned about include the various sorting and searching efficiencies of certain algorithms, stacks and queues, and the use of trees and weighted graphs when applied to data structures like arrays and link lists, which are used to create path finding algorithms.
Efficiency differences between structures in conjunction with algorithms and an understanding of when to and when not to implement them is suggested as well. Numerous concepts are introduced so the programmer is informed of various strategies and it is up to the programmer to decide which to use in his/her application. I highly recommend this book to anyone interested in game development and programming where data manipulation is great (most all programmers can benefit from reading this book).
