Parte-se de um vértice, marcando-o como "visitado", e "visita-se" um de seus vértices adjacentes que ainda não tenham sido visitados, repetindo o procedimento para cada vértice visitado até chegar em um vértice em que todos os seus adjacentes já foram visitados (chamado dead-end). Quando isso acontece, a busca retrocede um nó e realiza o mesmo procedimento até que, de maneira recursiva, retorne-se ao nó inicial sem que haja vértices não visitados adjacentes a ele.
Caso ainda restem vértices não visitados no grafo, a DFS é novamente aplicada para qualquer um desses vértices. Dessa maneira, garante-se que todos os vértices serão visitados