Desenvolva um algoritmo em pseudocódigo que, dada uma matriz 'agenda' de registros [dia, hora, descricao]…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Reconhecer objetos do mundo real e/ou digital que podem ser representados através de registros que estabelecem uma organização na qual cada componente é identificado por um nome, fazendo manipulações sobre estas representações.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Desenvolva um algoritmo em pseudocódigo que, dada uma matriz 'agenda' de registros [dia, hora, descricao], remova registros duplicados com mesma 'descricao', mantendo a ordem original e retornando a matriz compactada. Use os termos 'registro' e 'algoritmo'.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Algoritmo RemoverDuplicatasAgenda(agenda) vistos <- conjunto vazio resultado <- lista vazia para cada registro em agenda: se registro.descricao ? vistos então adicionar registro.descricao a vistos anexar registro a resultado retornar resultado // Mantém a ordem original (estável) e mantém apenas a primeira ocorrência de cada descrição; complexidade O(n) assumindo operações de conjunto O(1).
Explicação
O algoritmo utiliza um conjunto para rastrear as descrições já vistas, garantindo que cada descrição seja adicionada apenas uma vez à lista de resultados. Isso permite que os registros sejam mantidos na ordem original, já que a iteração sobre a matriz é sequencial. A complexidade O(n) é alcançada devido ao uso eficiente do conjunto para verificar duplicatas.
Raio-X da questão
remover duplicados matriz
fixacao
estrutura de dados · algoritmos básicos
Revisar como manipular matrizes e algoritmos em pseudocódigo.
O aluno pode confundir a remoção de duplicados com a simples filtragem, não mantendo a ordem original dos registros.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Projete um algoritmo em pseudocódigo que detecte e remova registros duplicados em uma matriz de dados escolares (cada…
- Considere um vetor (matriz unidimensional) chamado 'agenda' em que cada registro possui os campos: dia (string), hora…
- Descreva um algoritmo em pseudocódigo que receba uma matriz de registros 'clientes' (linhas = grupos, colunas =…
- Descreva em pseudocódigo um algoritmo que recebe uma matriz de registros 'agenda' (linhas = dias, colunas = horários)…
- Descreva em pseudocódigo um algoritmo que detecte conflitos de sala em uma matriz 'horarios' onde cada registro é [dia…
- Projete um algoritmo em pseudocódigo que converta uma matriz 'horarios' de dimensão D×H (dias × horários) em uma lista…
🔎 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
