This really applies to programming in general but also can apply to game programming specifically: learn about ADTs (Abstract Data Types) and learn trees and graphs. All three are going to be...