Questão de Algoritmos e Estrutura de Dados — Estrutura de Dados — COPESE - UFPI 2018
Algoritmos e Estrutura de Dados›Estrutura 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.
APilha
BFila
CVetor
DMatriz
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.