Questão nº 21
Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 21)
No decorrer do desenvolvimento de um software, Gabriel, analista de sistemas, depara-se com a necessidade de incorporar uma funcionalidade que demanda o uso de uma estrutura de dados capaz de armazenar e acessar informações seguindo uma ordem específica. Essencialmente, a funcionalidade exige que o último item adicionado seja o primeiro a ser extraído e processado. Além disso, é crucial que o sistema possua a habilidade de adicionar e remover elementos de maneira extremamente eficaz.
Levando em consideração esses requisitos, Gabriel identifica que a estrutura adequada para cumprir tais exigências é a:
- Afila;
- Blista;
- Cpilha; (alternativa correta)
- Dárvore;
- Elista duplamente encadeada.
Resposta comentada
Gabarito Alternativa C
Uma pilha é uma estrutura de dados que armazena itens como uma pilha de pratos: o último prato que você coloca em cima é o primeiro que você tira. Isso é conhecido como LIFO (Last In, First Out - Último a Entrar, Primeiro a Sair).
- (A) Incorreta: A fila segue o princípio FIFO (First In, First Out), onde o primeiro item adicionado é o primeiro a ser removido, o oposto do que é exigido. A armadilha aqui é que a fila também é uma estrutura ordenada com operações eficientes, mas sua lógica de acesso é inversa à da pilha, sendo um distrator comum para quem confunde LIFO e FIFO.
- (B) Incorreta: Uma lista é um termo genérico que pode ser implementado de várias formas e não impõe inerentemente a regra LIFO para acesso e remoção de elementos.
- (C) Correta: A pilha é a estrutura de dados ideal para este cenário, pois sua característica fundamental é o princípio LIFO (Last In, First Out), garantindo que o último item adicionado seja o primeiro a ser extraído, com operações de adição (push) e remoção (pop) extremamente eficientes (tempo constante, O(1)).
- (D) Incorreta: Uma árvore é uma estrutura hierárquica usada para organizar dados de forma não linear, otimizada para busca e ordenação, não para o acesso LIFO.
- (E) Incorreta: Uma lista duplamente encadeada é uma forma de lista que permite navegação em ambas as direções e inserção/remoção eficiente em qualquer ponto, mas não impõe a ordem LIFO por padrão.
Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Analista de Banco de Dados (Caderno Tipo 1). Reproduzida para fins de estudo.