Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Estrutura de Dados — COPESE - UFPI 2018

Algoritmos e Estrutura de DadosEstrutura de Dados
Código
qq326895
Banca
COPESE - UFPI
Órgão
UFPI
Ano
2018
Nível
Médio
Cargo
COPESE - - Técnico de Tecnologia da Informação
Na alocação dinâmica de memória, os dados são armazenados em posições de memória referenciadas e dispostos em uma dada organização não linear, sendo possível, a partir de um elemento, encontrar os próximos. Assinale a opção a que se referem as informações.
  1. APilha
  2. BFila
  3. CVetor
  4. DMatriz
  5. ELista encadeada.
Revelar gabarito e comentário

GabaritoE — Lista encadeada.

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

Alocação dinâmica e listas encadeadas

Gabarito: letra E. A descrição — dados armazenados em posições de memória referenciadas, organização não linear (no sentido de posições não contíguas), e possibilidade de, a partir de um elemento, encontrar os próximos — corresponde exatamente a uma lista encadeada (linked list). Nessa estrutura, cada nó contém um dado e um ponteiro para o próximo nó, sendo alocados dinamicamente na memória. As demais opções não se encaixam: pilha e fila são estruturas lineares com regras de acesso específicas, e vetor/matriz são alocações estáticas e contíguas.

Alternativa A — ❌ Incorreta

Pilha é uma estrutura linear que segue a política LIFO (last in, first out). Embora possa ser implementada com lista encadeada, a descrição genérica do enunciado não menciona a restrição de acesso nem a ordem de inserção/remoção. O foco está no encadeamento por referências, que não é exclusivo nem definidor de pilhas.

Alternativa B — ❌ Incorreta

Fila é uma estrutura linear com política FIFO (first in, first out). Pelo mesmo motivo da pilha, a descrição do enunciado é mais ampla e se aplica diretamente a listas encadeadas, não a filas.

Alternativa C — ❌ Incorreta

Vetor (array) é uma estrutura estática: os elementos ocupam posições contíguas de memória e o acesso é indexado. Não há ponteiros explícitos para o próximo elemento nem alocação dinâmica (salvo em linguagens com arrays dinâmicos, mas ainda assim o encadeamento não é característico).

Alternativa D — ❌ Incorreta

Matriz é uma extensão bidimensional do vetor, com as mesmas características de alocação contígua e estática. Não se encaixa na descrição de memória referenciada e encadeamento.

Alternativa E — ✅ Correta ⟵ GABARITO

Lista encadeada é a estrutura clássica que utiliza alocação dinâmica: cada elemento (nó) é criado em tempo de execução e armazenado em uma posição de memória qualquer, contendo um campo de dado e um ponteiro para o próximo elemento. Isso permite percorrer a lista a partir de um nó, seguindo as referências. A expressão "organização não linear" do enunciado pode gerar dúvida, mas deve ser entendida como "posições de memória não contíguas" (ao contrário de um vetor). A descrição casa perfeitamente com o conceito de lista encadeada.

PEGA ESSA DICA!

Em questões sobre estruturas de dados, preste atenção aos termos-chave: "alocação dinâmica", "referências/ponteiros", "a partir de um elemento encontrar o próximo". Isso aponta diretamente para listas encadeadas. Pilhas e filas são estruturas lineares, mas não são definidas apenas pelo encadeamento — elas impõem regras de acesso que não foram mencionadas.

Link permanente: /questoes/qq326895