Questão de Algoritmos e Estrutura de Dados — Estrutura de Dados — FGV 2024
Algoritmos e Estrutura de Dados›Estrutura de Dados
Código
fg084697
Banca
FGV
Órgão
EPE
Ano
2024
Nível
Superior
Cargo
Analista de Gestão Corporativa - Tecnologia da Informação (Soluções)
Com relação ao algoritmo de garbage collection (coleta de lixo) chamado mark-sweep (ou mark-and-sweep), analise as afirmativas a seguir.I. Na fase de marcar (mark), o coletor percorre o grafo de objetos e marca todos aqueles que são alcançáveis.II. Na fase de varrer (sweep), a memória ocupada pelos objetos marcados (na fase de marcação) é liberada.III. Os objetos marcados (na fase de marcação) são realocados.Está correto o que se afirma em
AI, apenas.
BI e II, apenas.
CI e III, apenas.
DII e III, apenas.
EI, II e III.
Revelar gabarito e comentário▾
GabaritoA — I, apenas.
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”.
Algoritmo Mark-Sweep (Garbage Collection)
Gabarito: letra A. Apenas a afirmativa I está correta: na fase de marcação (mark), o coletor percorre o grafo de objetos e marca todos os alcançáveis. Na fase de varredura (sweep), a memória ocupada pelos objetos não marcados (não alcançáveis) é liberada — e não a dos marcados, como afirma a afirmativa II. A afirmativa III também está errada, pois o algoritmo mark-sweep não realiza realocação de objetos; realocação é característica de algoritmos como mark-compact.
A banca explora um equívoco comum: inverter o alvo da liberação na fase sweep. Enquanto a fase mark identifica o que deve ser preservado (objetos alcançáveis), a fase sweep descarta o que não foi marcado (lixo). É o oposto do que diz a afirmativa II.
1Mark: marca alcançáveis
2Sweep: libera NÃO marcados
3Realoca objetos
LEVEL · soulevel.com.br
Item I — ✅ Correto
A afirmativa descreve corretamente a fase de marcação: percorrer o grafo de objetos a partir das raízes e marcar todos que são alcançáveis. Esse é o propósito da fase mark.
Item II — ❌ Incorreto
A afirmativa inverte a lógica: na fase sweep, a memória ocupada pelos objetos não marcados (não alcançáveis) é liberada, e não a dos marcados. Os objetos marcados são mantidos.
Item III — ❌ Incorreto
Objetos marcados não são realocados no algoritmo mark-sweep. Realocação (ou compactação) é uma etapa adicional presente em algoritmos como mark-compact ou copying collection, que visam eliminar fragmentação. O mark-sweep tradicional apenas marca e depois varre, sem mover objetos.