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

Projete a assinatura e o pseudocódigo de um algoritmo generalizado para disseminação de mensagens em uma rede…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF06CO06

Comparar diferentes casos particulares (instâncias) de um mesmo problema, identificando as semelhanças e diferenças entre eles, e criar um algoritmo para resolver todos, fazendo uso de variáveis (parâmetros) para permitir o tratamento de todos os casos de forma genérica.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Projete a assinatura e o pseudocódigo de um algoritmo generalizado para disseminação de mensagens em uma rede (grafo) que receba como entrada: o grafo de nós e arestas, uma mensagem inicial, um parâmetro função 'estrategia_encaminhamento(nodo,msg)' que indica os vizinhos a encaminhar conforme política, e um TTL (tempo de vida). Explique como a generalização permite reutilização com diferentes estratégias de encaminhamento.

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

Resposta esperada

Assinatura: disseminar_rede(Grafo G, Nodo origem, Mensagem m, Função estrategia_encaminhamento, Inteiro TTL) Pseudocódigo: disseminar_rede(G, origem, m, estrategia_encaminhamento, TTL): fila <- [(origem, m, TTL)] visitados <- conjunto vazio enquanto fila não vazia: nodo, msg, t <- remover_inicio(fila) se t <= 0: continuar se (nodo,msg) em visitados: continuar adicionar (nodo,msg) a visitados vizinhos <- estrategia_encaminhamento(nodo, msg) para cada v em vizinhos: se existe_aresta(G, nodo, v): enfileirar(fila, (v, msg, t-1)) retornar visitados Justificativa do projeto: - A assinatura separa dados (grafo, mensagem, TTL) da política de encaminhamento (função), tornando o algoritmo independente de regras específicas. - A função 'estrategia_encaminhamento' pode implementar flood, encaminhamento por prioridade, filtragem por etiqueta ou balanceamento, sem alterar a rotina de travessia. - Uso de fila e conjunto 'visitados' evita loops e controla alcance via TTL; variáveis são locais, permitindo reuso e execução concorrente. Complexidade e observações: - Tempo aproximado O(V+E) no caso em que cada aresta é considerada uma vez; política de encaminhamento pode afetar custo. - Para redes reais, estratégia pode retornar pesos, limites ou seleções que implementem critérios interdisciplinares (por exemplo, custo energético), mantendo o algoritmo geral e reutilizável.

Explicação

A solução apresentada é eficaz porque separa a lógica de disseminação da política de encaminhamento, permitindo que diferentes estratégias sejam facilmente integradas sem modificar o algoritmo principal. O uso de estruturas de dados como fila e conjunto 'visitados' garante que a execução seja eficiente e evita problemas como loops infinitos. Além disso, a complexidade do algoritmo é otimizada, o que é crucial para aplicações em redes reais.

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

algoritmo de disseminação

📌 Objetivo

avaliacao

🧱 Pré-requisitos

noções de grafos · pseudocódigo

📚 Reveja

Revisar conceitos de grafos e algoritmos de encaminhamento.

⚠️ Erro mais comum

O aluno pode confundir a estrutura de um grafo com uma lista, não aplicando corretamente a lógica de vizinhança na disseminação da mensagem.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Estratégias de solução de problemas - Generalização

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