Pilhas e filas são implementações de estruturas de dados que possuem algumas diferenças entre si. Dentre tais diferenças está o número de ponteiros empregados para indicar os elementos-chave da estrutura. Assinale, a seguir, o número correto de ponteiros presentes em uma pilha e em uma fila.
- A)Pilha: 0 ponteiro; Fila: 1 ponteiro
Errada, porque a pilha nao fica sem ponteiro em uma implementacao encadeada, e a fila costuma precisar de mais de um ponteiro.
- B)Pilha: 1 ponteiro; Fila: 0 ponteiro
Errada, porque a pilha normalmente usa 1 ponteiro, mas a fila nao pode ser representada corretamente apenas com 0 ponteiro nessa abordagem.
- C)Pilha: 1 ponteiro; Fila: 2 ponteiros
Certa, pois a pilha trabalha com 1 ponteiro para o topo e a fila com 2 ponteiros, para inicio e fim.
- D)Pilha: 2 ponteiros; Fila: 0 ponteiro
Errada, porque a pilha nao precisa de 2 ponteiros e a fila nao funciona com 0 ponteiro na representacao usual.
Gabarito: C
Pilha e fila sao estruturas lineares, mas cada uma guarda seus elementos de um jeito diferente. Na pilha, o acesso ocorre sempre pelo topo, como uma pilha de pratos: voce coloca e retira pelo mesmo ponto. Por isso, na implementacao encadeada, normalmente basta 1 ponteiro, que aponta para o topo. Ja na fila, a ideia e seguir a ordem de chegada, como uma fila de banco: entra por um lado e sai pelo outro. Para isso, a estrutura precisa controlar 2 extremidades, isto e, um ponteiro para o inicio e outro para o fim. Sem esses dois referenciais, a operacao de enfileirar e desenfileirar ficaria bem mais lenta ou confusa. Por isso, o gabarito C esta correto: pilha com 1 ponteiro e fila com 2 ponteiros. Esse e o padrao classico apresentado em estruturas de dados encadeadas. Em implementacoes por vetor, a logica muda um pouco, mas a ideia de controlar topo na pilha e frente/fim na fila continua a mesma. Em prova, a banca costuma cobrar essa diferenca basica entre as estruturas, misturando o conceito de acesso unico da pilha com os dois extremos da fila. Aqui, a pergunta nao trata de quantidade de elementos, mas dos ponteiros de controle da estrutura.