Let H be an arbitrary graph with vertex set V(H) = [n(H)] = {1, ..., n(H)}. The generalized Sierpinski graph S-H(n) , n is an element of N, is defined on the vertex set [n(H)](n), two different vertices u = u(n) ...u(1) and v = v(n) ... v(1) being adjacent if there exists an h is an element of [n] such that (a) u(t) = v(t), for t > h, (b) u(h) not equal v(h) and u(h)v(h) is an element of E(H), and (c) u(t) = v(h) and v(t) = u(h) for t < h. If H is the complete graph K-k, then we speak of the Sierpinski graph S-k(n). We present an algorithm that recognizes Sierpinski graphs S-k(n) in O(vertical bar V(S-k(n))vertical bar(1+1/n) = O(vertical bar E(S-k(n))vertical bar) time. For generalized Sierpinski graphs S-H(n) we present a polynomial time algorithm for the case when H belong to a certain well defined class of graphs. We also describe how to derive the base graph H from an arbitrarily given S-H(n).