How could we design a program that plays Tic Tac Toe? The standard technique searches for the best moves by using a game tree, which looks a bit like a family tree. A game tree is not a data structure; it is the structure of a sequence of recursive method calls.