Questão de Algoritmos e Estrutura de Dados — Estrutura de Dados — Instituto Consulplan 2025
Algoritmos e Estrutura de Dados›Estrutura de Dados
Código
qg555029
Banca
Instituto Consulplan
Órgão
Câmara de Mariana - MG
Ano
2025
Nível
Superior
Cargo
Analista de Sistema
Em um sistema de gerenciamento de biblioteca, é necessário modelar as informações dos livros, autores e empréstimos utilizando tipos de dados estruturados. A seguir, são apresentadas definições de estruturas de dados abstratas e concretas que poderiam ser empregadas na implementação desse sistema. Considerando as descrições fornecidas, analise os itens a seguir.I. “Para representar um livro com atributos como título, autor e ISBN, utiliza-se ___________, que agrupa esses diferentes tipos de dados sob um único tipo composto.”II. “Para armazenar uma coleção ordenada de livros onde cada livro pode ser acessado por um índice numérico, utiliza-se ___________.”III. “Para associar cada ISBN único a um registro de livro correspondente, permitindo buscas rápidas, utiliza-se ___________.”IV. “Para manter a lista de empréstimos onde novos empréstimos são adicionados e removidos frequentemente, utiliza-se ___________, que permite inserções e remoções eficientes em qualquer posição.”V. “Para armazenar os nomes dos autores de forma que não haja duplicatas e que permita operações eficientes de verificação de existência, utiliza-se ___________.”Assinale a alternativa que completa correta e sequencialmente as afirmações anteriores.
AI. classe II. array III. mapa IV. pilha V. dicionário
BI. estrutura II. matriz III. árvore binária IV. fila V. lista
CI. tupla II. lista III. tabela de dispersão IV. deque V. pilha
DI. registro II. vetor III. tabela hash IV. lista ligada V. conjunto
Revelar gabarito e comentário▾
GabaritoD — I. registro II. vetor III. tabela hash IV. lista ligada V. conjunto
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Estruturas de dados: identificação prática
Gabarito: letra D. A sequência que completa corretamente as lacunas é: I. registro, II. vetor, III. tabela hash, IV. lista ligada, V. conjunto. Cada termo descreve exatamente a estrutura adequada para a finalidade descrita – desde o agrupamento heterogêneo de atributos (registro) até a garantia de unicidade com busca rápida (conjunto).
A questão testa o conhecimento das definições clássicas de estruturas de dados e sua aplicação em cenários concretos. Vamos analisar cada lacuna.
I — “agrupa diferentes tipos de dados sob um único tipo composto”
O termo correto é registro (ou record/struct). O registro permite armazenar campos de tipos distintos (título, autor, ISBN) em uma mesma variável composta. As alternativas incompatíveis:
A: classe – embora também agrupe dados, o conceito está ligado à orientação a objetos e inclui métodos; a descrição do item I não menciona comportamento.
B: estrutura – muito genérico, qualquer agregado pode ser chamado de estrutura, mas o termo técnico preciso é registro.
C: tupla – normalmente imutável e mais usada em linguagens funcionais; não é a primeira escolha para um agregado mutável como um livro.
II — “coleção ordenada […] acessado por um índice numérico”
Trata-se de um vetor (array). É a estrutura linear que oferece acesso direto por índice.
A: array – sinônimo de vetor, mas a opção D usa “vetor”, que é o termo em português mais corrente em concursos.
B: matriz – é um vetor multidimensional, desnecessário para uma coleção simples.
C: lista – em muitas linguagens, “lista” (list) também é indexada, mas o nome clássico para acesso direto por índice é vetor/array.
III — “associar ISBN único a um registro […] buscas rápidas”
A estrutura ideal é a tabela hash (ou tabela de dispersão). Ela mapeia chaves (ISBN) a valores (registro) com complexidade O(1) média para busca.
A: mapa – é um conceito mais abstrato (dicionário); a implementação concreta que garante rapidez é a tabela hash.
B: árvore binária – embora busque em O(log n), não é a mais rápida para acesso direto por chave, e a descrição enfatiza “buscas rápidas” (típico de hash).
C: tabela de dispersão – exato sinônimo de tabela hash; a opção C perde por outros itens.
IV — “inserções e remoções eficientes em qualquer posição”
A lista ligada (linked list) é a estrutura que permite inserir/remover em qualquer ponto sem deslocar elementos (ao contrário do vetor).
A: pilha – só insere/remove no topo (LIFO).
B: fila – apenas insere no fim e remove no início (FIFO).
C: deque – dupla extremidade, ainda assim limitado às pontas, não em qualquer posição.
V — “não haja duplicatas e […] verificação de existência eficiente”
Isso define um conjunto (set). O conjunto armazena elementos únicos e oferece operações de pertinência O(1) (se implementado com hash).
A: dicionário – associa chave a valor, mas não garante unicidade apenas das chaves; a descrição fala de “nomes dos autores” (apenas os valores, sem necessidade de mapeamento).
B: lista – permite duplicatas naturalmente.
C: pilha – não impede duplicatas e não otimiza busca.
PEGA ESSA DICA!
Em questões de estruturas de dados, foque no propósito (agrupamento, acesso indexado, busca rápida, flexibilidade de inserção/remoção, unicidade) e relacione com a estrutura clássica. Monte uma tabela mental:
Finalidade
Estrutura
Agregar campos heterogêneos
registro
Acesso por índice
vetor (array)
Mapeamento chave → valor rápido
tabela hash (mapa)
Inserção/remoção em qualquer ponto
lista ligada
Unicidade + pertinência
conjunto (set)
Nenhuma das outras alternativas (A, B, C) acerta ao menos três itens; apenas a letra D preenche todas as lacunas com os termos técnicos precisos.