Você deve projetar um algoritmo que associe cada identificador de aluno a uma sequência de carimbos de tempo…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Construir soluções computacionais de problemas de diferentes áreas do conhecimento, de forma individual e colaborativa, selecionando as estruturas de dados e técnicas adequadas, aperfeiçoando e articulando saberes escolares.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Você deve projetar um algoritmo que associe cada identificador de aluno a uma sequência de carimbos de tempo (timestamps) de entradas e saídas; qual estrutura de dado é mais adequada para representar essa associação?
- A) Dicionário (map) onde a chave é o id do aluno e o valor é uma lista de timestamps.
- B) Número inteiro, pois pode representar quantidades de carimbos.
- C) Lista, pois pode armazenar múltiplos alunos de uma vez.
- D) Conjunto, para evitar repetições de carimbos de tempo.
- E) Array estático, pois tem tamanho fixo para entradas e saídas.
✅ Resposta correta: alternativa A
Resolução passo a passo
- O problema pede uma associação em que cada identificador de aluno (chave) está ligado a uma sequência de carimbos de tempo (valor). Ou seja, a estrutura precisa mapear uma chave para um conjunto ordenado de valores.
- Um dicionário (map) é exatamente essa estrutura: a chave é o id do aluno e o valor é uma lista de timestamps. A lista mantém a ordem dos registros de entrada e saída e permite múltiplos carimbos por aluno, enquanto o acesso pela chave é direto e eficiente.
- Por que as outras não servem:
- B) Um inteiro guarda apenas um número e não consegue associar identificadores a sequências de carimbos.
- C) Uma lista simples armazena valores em sequência, mas não liga cada aluno à sua própria sequência de carimbos; misturaria os dados de todos.
- D) Um conjunto elimina repetições e não guarda ordem, o que é inadequado para registros de entrada e saída, além de não associar cada aluno aos seus carimbos.
- E) Um array estático tem tamanho fixo, mas o número de entradas e saídas de cada aluno é variável, e não há associação explícita entre aluno e carimbos.
- Conclusão: a resposta correta é a alternativa A, coincidindo com o gabarito oficial.
💡 Dica: Considere as características das estruturas de dados disponíveis.
Alternativa por alternativa
O dicionário permite busca rápida por id; a lista preserva a ordem cronológica e aceita múltiplos registros por aluno.
O aluno entendeu que, por haver muitos carimbos, basta um número para representar a quantidade, confundindo contagem com associação entre chave e valores.
O aluno acredita que lista resolve qualquer armazenamento de vários elementos, sem perceber que ela não relaciona cada aluno à sua própria sequência de carimbos.
Por que engana: Escolher uma estrutura de dados que não permite associações diretas, como um número inteiro ou uma lista simples, levando a uma implementação ineficiente.
O aluno considerou que os carimbos não devem se repetir e concluiu que um conjunto seria o mais adequado, ignorando que conjuntos não guardam ordem nem associam chaves a valores.
O aluno relacionou entradas e saídas a um tamanho fixo, mas o número de registros por aluno é variável, e o array não faz a associação entre aluno e carimbos.
Raio-X da questão
estruturas de dados
avaliacao
estruturas de dados · algoritmos básicos
Revisar as principais estruturas de dados e suas aplicações.
Escolher uma estrutura de dados que não permite associações diretas, como um número inteiro ou uma lista simples, levando a uma implementação ineficiente.
ciencia_tecnologia
tomada_decisao
abstrato
Questões parecidas com resolução
- Num algoritmo que registra as horas de estudo de cada aluno durante a semana (segunda a domingo), qual estrutura de…
- Identifique qual estrutura de dados é mais apropriada para armazenar informações de alunos em uma turma.
- Qual estrutura de dados é mais adequada para armazenar informações de um aluno?
- Qual a estrutura de dados mais apropriada para representar informações de alunos em uma escola?
- Você está desenvolvendo um programa que precisa armazenar informações sobre diferentes estudantes em uma turma. Qual…
- Ao projetar um algoritmo que agrupa registros de alunos por turma e precisa manter a ordem de inserção enquanto permite…
🔎 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
