GeraProva GeraProva Provas com IA para professores do Brasil
Computação2ª sérieBNCC EM13CO03Difícil⏱ curto

Qual técnica algorítmica permite detectar ciclos em um grafo dirigido em tempo O(V+E)?

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO03

Identificar o comportamento dos algoritmos no que diz respeito ao consumo de recursos como tempo de execução, espaço de memória e energia, entre outros.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Qual técnica algorítmica permite detectar ciclos em um grafo dirigido em tempo O(V+E)?

  1. A) Utiliza apenas marcação de estados brancos e pretos.
  2. B) Busca em profundidade (DFS) com marcação de estados (branco/cinza/preto) para identificar arestas de retorno.
  3. C) Busca em largura (BFS)
  4. D) Detecção de ciclo é O(E) apenas.
  5. E) Ciclo não pode ser detectado em grafos dirigidos.

✅ Resposta correta: alternativa B

Resolução passo a passo

  1. O problema pede a técnica que detecta ciclos em um grafo dirigido em tempo O(V+E), onde V é o número de vértices e E o número de arestas. Passo 2: A DFS (busca em profundidade) visita cada vértice e cada aresta uma vez, o que custa O(V+E). Passo 3: Durante a DFS, cada vértice recebe um estado: branco (não visitado), cinza (em visita, na pilha de recursão) ou preto (já finalizado). Passo 4: Existe ciclo se, ao examinar uma aresta de u para v, o vértice v está cinza, pois isso significa que v é ancestral de u na árvore de busca e a aresta é uma aresta de retorno. Passo 5: Por isso a alternativa B está correta e o gabarito oficial coincide com a resolução. Passo 6: A alternativa A está errada porque sem o estado cinza não é possível distinguir um vértice em processamento de um já finalizado, o que impede identificar arestas de retorno. Passo 7: A alternativa C está errada porque a BFS não usa a noção de ancestral na pilha de recursão e não identifica arestas de retorno de forma direta. Passo 8: A alternativa D está errada porque a complexidade O(E) ignora os vértices, e a detecção de ciclo custa O(V+E), não apenas O(E). Passo 9: A alternativa E está errada porque ciclos em grafos dirigidos são detectáveis, como em dependências circulares de tarefas, e isso é justamente o que a DFS faz.

💡 Dica: Considere as propriedades dos algoritmos de busca em profundidade.

Alternativa por alternativa

A Erradaerro: Conceitual

O aluno acredita que apenas duas cores bastam, sem perceber que o estado cinza é necessário para saber se um vértice ainda está no caminho atual da busca.

B Correta

DFS visita vértices e arestas uma única vez; arestas que apontam para um vértice em estado 'cinza' indicam ciclo em grafo dirigido, resultando em O(V+E).

C Erradaerro: Conceituala que mais engana

O aluno associa a detecção de ciclos a qualquer busca em grafos e supõe que a BFS, por visitar vértices por níveis, também identifica arestas de retorno.

Por que engana: Confundir a técnica de busca em largura com a busca em profundidade, acreditando que ambas têm a mesma eficiência na detecção de ciclos.

D Erradaerro: Procedimental

O aluno considera apenas o número de arestas no custo e esquece que o algoritmo também percorre todos os vértices, o que gera O(V+E).

E Erradaerro: Senso comum

O aluno transfere a intuição do dia a dia de que ciclos são coisas de grafos não dirigidos ou de caminhos fechados simples, e conclui que em grafos dirigidos eles não podem ser detectados.

Raio-X da questão

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

detecção de ciclos em grafos

📌 Objetivo

avaliacao

🧱 Pré-requisitos

grafos dirigidos · busca em profundidade

📚 Reveja

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

⚠️ Erro mais comum

Confundir a técnica de busca em largura com a busca em profundidade, acreditando que ambas têm a mesma eficiência na detecção de ciclos.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de [CONFERIR] Construir soluções baseadas no uso de algoritmos e conceitos da Computação para resolver problemas, avaliando suas qualidades e melhorando-as.

🔎 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.