Escreva um algoritmo em linguagem descritiva que, dada a lista de adjacência de um grafo não direcionado e não…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Reconhecer objetos do mundo real e digital que podem ser representados através de grafos que estabelecem uma organização com uma quantidade variável de vértices conectados por arestas, fazendo manipulações simples sobre estas representações.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Escreva um algoritmo em linguagem descritiva que, dada a lista de adjacência de um grafo não direcionado e não ponderado, conte e retorne o número de componentes conectadas. Use os termos 'algoritmo' e 'visitado'.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Algoritmo ContarComponentes(ListaAdj): 1. Para cada vértice v em ListaAdj: visitado[v] <- falso 2. componentes <- 0 3. Para cada vértice v em ListaAdj: se visitado[v] = falso então componentes <- componentes + 1 executar DFS(v) 4. Retornar componentes Subrotina DFS(u): 1. marcar visitado[u] <- verdadeiro 2. Para cada w em ListaAdj[u]: se visitado[w] = falso então chamar DFS(w) Descrição: o algoritmo inicializa todos os visitados como falso, percorre cada vértice e, quando encontra um não visitado, incrementa o contador de componentes e executa uma DFS marcando todos os vértices alcançáveis daquela componente. No final, 'componentes' contém o número de componentes conectadas.
Explicação
O algoritmo utiliza uma abordagem de busca em profundidade (DFS) para explorar cada componente do grafo, garantindo que todos os vértices conectados sejam marcados como visitados. Ao contar quantas vezes inicia uma nova DFS, o algoritmo determina o número total de componentes conectadas. Essa metodologia é eficaz, pois cada execução da DFS identifica e marca todos os vértices de uma única componente, evitando contagens duplicadas.
Raio-X da questão
componentes conectadas
avaliacao
listas de adjacência · componentes de grafos
Revisar conceitos de grafos e algoritmos de busca.
O aluno pode confundir o conceito de componentes conectadas com o de arestas ou vértices isolados, resultando em uma contagem incorreta.
ciencia_tecnologia
criatividade
abstrato
Questões parecidas com resolução
- Escreva em linguagem descritiva um algoritmo que, recebendo a lista de adjacência de um grafo não direcionado, retorne…
- Descreva, em termos de algoritmo que usa a variável 'visitado', como contar o número de componentes conexos em uma rede…
- Desenvolva um algoritmo em pseudocódigo que, dado um grafo não direcionado representado por listas de adjacência…
- Projete um algoritmo em linguagem descritiva que, dada uma lista de adjacência de um grafo qualquer, retorne uma lista…
- Projete um algoritmo em alto nível que, dado um grafo simples não direcionado representado por lista de adjacência…
- Descreva um algoritmo em alto nível que, dado um grafo não direcionado representado por lista de adjacência, identifique…
🔎 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
