FC ConcursosFC Concursos

Questão FC514953

No que se refere ao SonarQube, às estruturas de dados e à complexidade de algoritmos, julgue o item subsecutivo. Para gerenciar a ordem de execução de chamadas de função em um prog

Algoritmos e Lógica de Programação

CEBRASPE (CESPE) · 2025

No que se refere ao SonarQube, às estruturas de dados e à complexidade de algoritmos, julgue o item subsecutivo.

Para gerenciar a ordem de execução de chamadas de função em um programa recursivo, a estrutura de dados mais adequada é a pilha (stack), pois sua característica LIFO (last-in, first-out) espelha o fluxo de execução em que a última função chamada é a primeira a finalizar sua execução e retornar.

Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

A afirmação é certa porque a execução de chamadas de função em tempo de execução é gerida por uma pilha de ativação. Cada vez que há uma chamada de função o sistema adiciona ao topo da pilha um registro (o quadro de ativação) com variáveis locais, endereço de retorno e estado.

Em uma rotina recursiva isso se repete: cada invocação empilha um novo quadro. Quando uma chamada termina, seu quadro é removido (pop) e o controle retorna ao quadro anterior. Esse comportamento é exatamente o de uma pilha LIFO (last-in, first-out), pois a última chamada empilhada é a primeira a finalizar.

Assim, para gerenciar a ordem de execução em recursão, a estrutura natural e mais adequada é a stack. Note que profundidades muito grandes podem causar stack overflow.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo