GeraProva GeraProva Provas com IA para professores do Brasil
Computação3ª sérieBNCC EM13CO01Média⏱ longo

Descreva, em termos de algoritmo que usa a variável 'visitado', como contar o número de componentes conexos em…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO01

Explorar e construir a solução de problemas por meio da reutilização de partes de soluções existentes.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Descreva, em termos de algoritmo que usa a variável 'visitado', como contar o número de componentes conexos em uma rede representada por lista de adjacência.

  1. A) Contar componentes sem usar a variável 'visitado'.
  2. B) Usar DFS apenas em vértices com grau maior que 1.
  3. C) Percorrer todos os vértices; para cada vértice não visitado executar DFS/BFS marcando 'visitado' e incrementar um contador; o contador é o número de componentes.
  4. D) Incrementar o contador apenas quando todos vértices forem visitados.
  5. E) Execute apenas a busca em vértices visitados.

✅ Resposta correta: alternativa C

Resolução passo a passo

  1. Para contar componentes conexos em um grafo (rede) representado por lista de adjacência, precisamos de um algoritmo que visite cada componente exatamente uma vez. A variável 'visitado' registra quais vértices já foram alcançados por alguma busca. Passo 2: Inicie um contador de componentes com valor zero e marque todos os vértices como não visitados. Passo 3: Percorra todos os vértices da rede, um por um. Passo 4: Ao encontrar um vértice que ainda não foi visitado, ele pertence a um componente nunca explorado; então incremente o contador em 1 e execute uma DFS ou BFS a partir dele. Essa busca percorre toda a componente conexa, marcando como visitados todos os vértices alcançáveis pelas arestas da lista de adjacência. Passo 5: Quando o laço terminar, o contador contém o número de componentes conexos, pois cada componente foi iniciado exatamente uma vez, no seu primeiro vértice não visitado. Passo 6: Por que a alternativa C está certa: ela descreve exatamente esse procedimento, com varredura de todos os vértices, DFS/BFS apenas a partir de vértices não visitados, marcação e incremento do contador. Passo 7: Por que as outras estão erradas: a alternativa A elimina a variável 'visitado', sem a qual a busca reexploraria componentes já contados; a alternativa B restringe a busca a vértices de grau maior que 1, deixando de fora componentes formados por vértices isolados, que também contam; a alternativa D incrementa o contador somente ao final, o que não faz sentido, pois o número de componentes é contado a cada nova busca iniciada; a alternativa E manda buscar em vértices já visitados, o que é redundante e não conta componentes.

💡 Dica: Pense em como percorrer a lista de adjacência para identificar componentes.

Alternativa por alternativa

A Erradaerro: Conceituala que mais engana

O aluno acredita que a variável 'visitado' é desnecessária para contar componentes, como se bastasse contar buscas sem controlar o que já foi percorrido. Na prática, sem ela, cada componente seria explorado repetidamente.

Por que engana: O aluno pode confundir a necessidade de marcar vértices como visitados, tentando contar componentes sem essa marcação, o que levaria a contagens incorretas.

B Erradaerro: Conceitual

O aluno confunde o critério de início da busca com o grau dos vértices, supondo que vértices de grau 0 ou 1 não formam componentes relevantes. Um vértice isolado (grau 0) é um componente conexo e precisa ser contado.

C Correta

Cada chamada de DFS/BFS alcança todos os vértices de uma componente; iniciar busca apenas em vértices não visitados garante contar cada componente exatamente uma vez.

D Erradaerro: Procedimental

O aluno imagina que o contador só deve ser incrementado após visitar todos os vértices, confundindo o número de componentes com o total de vértices visitados. Dessa forma, o contador teria sempre valor 0 ou 1 e não representaria as componentes separadas.

E Erradaerro: Interpretação

O aluno inverte a lógica da busca, supondo que se deve explorar vértices já visitados. Isso não faz sentido, pois vértices visitados já pertencem a uma componente contada e não devem gerar nova contagem.

Raio-X da questão

Dificuldade Média
Bloom Aplicar
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

componentes conexos

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos de busca · listas de adjacência

📚 Reveja

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

⚠️ Erro mais comum

O aluno pode confundir a necessidade de marcar vértices como visitados, tentando contar componentes sem essa marcação, o que levaria a contagens incorretas.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

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.