A binary tree is a data structure in which each node contains
links to two successor nodes, so that the whole structure is shaped like
a branching tree. A typical use for a binary tree might be storing
genealogical information; since (at this point in human evolution) every
individual has two parents, each node can represent a person and the two
linked nodes can represent that person's mother and father. Let's
extend our personal_data structure to incorporate this kind of
information:
struct personal_data
{
char name[100];
char address[200];
int year_of_birth;
int month_of_birth;
int day_of_birth;
struct personal_data *mother;
struct personal_data *father;
};