I don't know what שרוץ means, but
A Hamiltonian path is one in which each vertex is visited exactly once. This is hard. Notice that something as simple as all the degrees in the graph being even is enough to guarantee a path that crosses every edge once, and therefore must visit every vertex. The problem with DFS is that if there is a unique Hamiltonian path, it will have to make the correct decision at every vertex (choose which edge to cross)..
Hope this helps.