Questões de Prova

Considere o excerto de código a seguir void remover() { if (estr.ini == estr.fim) { printf(“nA estrutura está vazia, não há nada para remover!nn”); system(“pause̶ …

Considere o excerto de código a seguir:

void remover() {
if (estr.ini == estr.fim) {
printf(“nA estrutura está vazia, não há nada para remover!nn”);
system(“pause”);
}else {
int i;
for (i = 0; i < tamanho; i++) {
estr.dados[i] = estr.dados[i+1];
}
estr.dados[fila.fim] = 0;
estr.fim–;
}
}

O algoritmo representa a remoção de elementos de um determinado tipo de estrutura de dados.

Assinale a alternativa que indica o tipo de estrutura que o algoritmo se refere.

Alternativas

Alternativa 1:
Fila

Alternativa 2:
Lista

Alternativa 3:
Pilha

Alternativa 4:
Heap

Alternativa 5:
Grafo

Resposta:

Alternativa 1 – Fila

Explicação:

O algoritmo apresentado parece ser uma função para remover elementos de uma determinada estrutura de dados. Ao ler o código, percebemos algumas características importantes:

Primeiro, a função verifica se a estrutura está vazia. Isso é importante, pois não faz sentido tentar remover algo de uma estrutura que já está vazia.

Caso a estrutura não esteja vazia, a função executa um loop para “deslocar” os elementos restantes. Isso indica que a estrutura de dados é do tipo “fila”, pois o primeiro elemento a ser inserido é também o primeiro a ser removido (FIFO – First In, First Out).

Após a remoção, o último elemento da estrutura é atualizado para indicar a nova posição do final da fila.

Então, com base nessas observações, a alternativa correta que indica o tipo de estrutura de dados a qual o algoritmo se refere é a Alternativa 1: Fila.

As filas são estruturas muito úteis quando precisamos processar informações na ordem em que foram recebidas.

Participe do Grupo no Telegram

* Link Telegram

Participe do Grupo no Whatsapp

* Link Whatsapp

Buscar Vagas de Emprego

* Buscar Vagas