Despite that Genetic Algorithm has become one of the most searching and optimization technique used to solving many complex problems, it is still have limitations to solve some problems such as the combinatorial optimization problems. Those problems require variably length character strings. However Genetic Programming has been designed to solve such type of problems, which is an extension of genetic algorithm model for learning the space of program. That is, the individuals that constitute the population are computer programs of unfixed length character strings that represent possible candidate solutions to the problem. These programs are expressed in Genetic programming as binary trees. This work illustrates how one can use Genetic Programming to find the form (structure) of the function or at least an approximation to it, which is called symbolic regression problem (symbolic function identification) using binary tree structure to represent the function in the population. Two different methods to initialize the tree structure in the genetic programming are used mainly the full method and grow method. Illustrative examples are presented to show the power of each method in finding the structure of the function that fits a given set of data. It found that the Genetic Programming found successfully a good mathematical expression that fits a given data in the context of minimization of sum absolute of error in comparison to the standard polynomial curve fitting routines.