Estruturas de dados: pilha e fila
Gabarito: letra B. As afirmativas III e IV estão corretas; I e II estão incorretas por inverterem os conceitos de FIFO e LIFO. Pilha é LIFO (Last-in, First-out) e fila é FIFO (First-in, First-out). Underflow é o termo para tentativa de remoção em estrutura vazia, tanto em pilha quanto em fila.
Característica | Pilha | Fila |
|---|
Sigla | LIFO (Last-in, First-out) | FIFO (First-in, First-out) |
Ordem de saída | Último a entrar é o primeiro a sair | Primeiro a entrar é o primeiro a sair |
Remoção em estrutura vazia | Underflow | Underflow |
Afirmativa I — ❌ Incorreta
A pilha é uma estrutura LIFO, não FIFO. O primeiro a entrar só sai depois que todos os elementos posteriores forem removidos. A confusão com FIFO é clássica, mas pilha e fila têm comportamentos opostos.
Afirmativa II — ❌ Incorreta
A fila é FIFO, não LIFO. O primeiro a entrar é o primeiro a sair (como uma fila de banco). LIFO é característico de pilhas.
Afirmativa III — ✅ Correta
Underflow ocorre quando se tenta remover um elemento de uma estrutura de dados vazia. No caso da fila, a operação de remoção (dequeue) em fila vazia gera underflow.
Afirmativa IV — ✅ Correta
Analogamente, tentar desempilhar (pop) ou acessar o topo de uma pilha vazia também caracteriza underflow. A grafia apresentada ("undeflow") é um erro de digitação, mas a banca considerou o conceito correto.
Gabarito: letra B