GeraProva GeraProva Provas com IA para professores do Brasil
Computação8º anoBNCC EF08CO01Difícil⏱ longo

Explique como um algoritmo baseado em DFS (busca em profundidade) identifica a presença de ciclo em um grafo…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF08CO01

Construir soluções de problemas usando a técnica de recursão e automatizar tais soluções usando uma linguagem de programação.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Explique como um algoritmo baseado em DFS (busca em profundidade) identifica a presença de ciclo em um grafo dirigido. Em sua resposta descreva as variáveis técnicas 'visitado' e 'pilha_rec' (recursion_stack) e os critérios usados para reconhecer um ciclo.

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

DFS recursivo: marcar visitado[v]=pilha_rec[v]=true; para cada vizinho u: se !visitado[u] chamar dfs(u); se pilha_rec[u] for true ? ciclo detectado; ao final pilha_rec[v]=false. Complexidade O(V+E).

Explicação

A explicação aborda a implementação do algoritmo DFS para detectar ciclos em um grafo dirigido, utilizando as variáveis 'visitado' e 'pilha_rec' para rastrear os nós já explorados e os que estão na pilha de recursão, respectivamente. O reconhecimento de um ciclo ocorre quando um nó já visitado é encontrado novamente na pilha de recursão, indicando que um caminho foi percorrido que retorna a um nó anterior. A complexidade O(V+E) reflete a eficiência do algoritmo ao percorrer todos os vértices e arestas do grafo.

Raio-X da questão

Dificuldade Difícil
Bloom Analisar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

ciclos em grafos

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos de busca · estruturas de dados

📚 Reveja

Revisar a busca em profundidade e suas aplicações em grafos.

⚠️ Erro mais comum

O aluno pode confundir a função da pilha de recursão com a lista de nós visitados, não explicando corretamente como cada uma contribui para a detecção de ciclos.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Programação - Programação usando grafos e árvores

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.