Analise a Classe Estrutura abaixopublic class Estrutura { ...
public class Estrutura { private ArrayList<lnteger> estr; public Estrutura(){ estr = new ArrayList<lnteger>(); } public void adiciona( Integer n){ estr.add(n); } public integer remove(){ return (Integer) estr.remove( estr.size()-1); } }
Que estrutura de dados essa classe implementa?
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: B - Pilha
A questão apresentada requer o reconhecimento de uma estrutura de dados que a classe Estrutura
implementa. Esta análise foca na forma como os elementos são adicionados e removidos da lista interna, que é uma ArrayList
do tipo Integer
.
Para entender melhor, vamos analisar o comportamento da classe:
- Método
adiciona(Integer n)
: Este método adiciona um elemento ao final da lista, o que é uma operação típica de estruturas como pilhas e filas. - Método
remove()
: Remove e retorna o último elemento da lista. Este comportamento é característico de uma pilha, que segue a política LIFO (Last In, First Out), ou seja, o último elemento adicionado é o primeiro a ser removido.
Portanto, a estrutura implementada é uma Pilha, confirmando que a alternativa B é a correta.
Agora, vejamos porque as outras opções estão incorretas:
- A - Fila: Uma fila segue a política FIFO (First In, First Out), onde o primeiro elemento adicionado é o primeiro a ser removido. No entanto, a classe
Estrutura
remove o último elemento, não o primeiro. - C - Árvore: Árvores são estruturas hierárquicas e não utilizam o método de adição e remoção mostrado na classe.
- D - Ponteiro: Ponteiros não são estruturas de dados, mas sim referências a locais de memória. Não se aplicam ao caso de implementação mostrada.
- E - Hash: Estruturas de hash, como tabelas hash, utilizam funções de hash para mapear chaves a valores, o que não está sendo feito na classe apresentada.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
A Resposta é a letra B) Pilha.
Pilha ou Stack Overflow é um tipo especial de lista linear em que todas as operações de inserçãoe remoção são realizadas pela mesma extremidade chamada topo. Os elementos são removidos na ordem do programa inversa daquela em que foram inseridos do modo que o último elemento que entra é sempre o primeiro ser executado por isto este tipo de estrutura é chamada LIFO(Last in Fisrt Out) ou FIFO (First In Last Out). O exemplo mais prático que costuma utilizar-se para entender, uma pilha de livros ou pilhas de pratos, no qual ao se colocar diversos elementos uns sobre os outros, se quisermos pegar o livros mais abaixo devemos tirar todos os livros que estiverem sobre ele.
Operadores basicos:
TOP: Acessa-se o elemento posicionado no topo da pilha.
PUSH: Insere um novo elemento no topo da lista
POP: Remove o elemento do topo da lista
PULL: Altera o elemento posicionado no topo da pilha
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo