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

Projete um algoritmo em linguagem descritiva que, dado um grafo ponderado dirigido cujas arestas representam…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF15CO02

Construir e simular algoritmos, de forma independente ou em colaboração, que resolvam problemas simples e do cotidiano com uso de sequências, seleções condicionais e repetições de instruções.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete um algoritmo em linguagem descritiva que, dado um grafo ponderado dirigido cujas arestas representam tempos de viagem entre locais, calcule o caminho de menor tempo entre um nó origem e um nó destino. Descreva variáveis, estrutura de dados (por exemplo, fila de prioridade) e analise a complexidade do algoritmo.

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

Resposta esperada

Variáveis: dist[ ], prev[ ], visitados; estrutura: fila de prioridade (min-heap) que ordena por dist. Inicialização: para todo vértice v, dist[v] ? 8; prev[v] ? nulo; dist[origem] ? 0; inserir (origem,0) no min-heap. Enquanto min-heap não vazio: (u, d_u) ? extrair mínimo do heap se u == destino: interrompa (caminho encontrado) se d_u > dist[u]: continue para cada aresta (u ? v) com peso w: alt ? dist[u] + w se alt < dist[v]: dist[v] ? alt prev[v] ? u inserir ou diminuir-chave (v, alt) no heap Ao fim: reconstruir caminho seguindo prev[] de destino até origem; dist[destino] é o tempo mínimo. Justificativa e complexidade: Este é o algoritmo de Dijkstra usando um min-heap; garante caminho de menor tempo para pesos não negativos. Operações de extração e diminuição-chave dominam o custo; com heap binário a complexidade é O((V+E) log V), e com heap de Fibonacci O(V log V + E). Variáveis prev permitem reconstruir o caminho; dist guarda as estimativas provisórias de tempo.

Explicação

O algoritmo descrito utiliza o método de Dijkstra, que é apropriado para encontrar o caminho de menor custo em grafos com arestas de pesos não negativos. A estrutura de dados escolhida, o min-heap, permite otimizar a extração do vértice com a menor distância atualizada, garantindo eficiência nas operações. A análise de complexidade apresentada demonstra que o algoritmo é escalável e eficiente, lidando adequadamente com a quantidade de vértices e arestas do grafo.

Raio-X da questão

Dificuldade Difícil
Bloom Criar
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

caminho de menor tempo

📌 Objetivo

avaliacao

🧱 Pré-requisitos

algoritmos de busca · grafos ponderados

📚 Reveja

Revisar algoritmos de busca em grafos e suas complexidades.

⚠️ Erro mais comum

O aluno pode confundir a estrutura de dados necessária, optando por uma lista simples em vez de uma fila de prioridade, o que compromete a eficiência do algoritmo.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Listas e grafos

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