Given a function f in a finite field Fq of q elements, we define the functional graph of f as a directed graph on q nodes labelled by the elements of Fq where there is an edge from u to v if and only if f(u)=v. We obtain some theoretical estimates on the number of non-isomorphic graphs generated by all polynomials of a given degree. We then develop a simple and practical algorithm to test the isomorphism of quadratic polynomials that has linear memory and time complexities. Furthermore, we extend this isomorphism testing algorithm to the general case of functional graphs, and prove that, while its time complexity deviates from linear by a (usually small) multiplier dependent on graph parameters, its memory complexity remains linear. We expl...