Informática, perguntado por carlagabriela54, 5 meses atrás

ATIVIDADE 1 - SI - ESTRUTURA DE DADOS I - 52/2021
1ª QUESTÃO
Na ciência da computação, a estrutura de dados do tipo pilha insere e remove os dados no seu topo. Essa estrutura é conhecida como Last In, First Out (LIFO), que pode ser traduzido por Último a Entrar, Primeiro a Sair.
Com relação à linguagem de programação e as estruturas de dados em C, considere a implementação da pilha abaixo.
#define tam 10
struct pilha{
int dados[tam];
int primeiro;
int ultimo;
};
pilha p;
void pop(){
p.dados[p.ultimo-1] = 0;
p.ultimo--;
}
OLIVEIRA, Pietro Martins de; PEREIRA, Rogério de Leon. Estrutura de Dados I. Maringá-Pr.: Unicesumar, 2019.
Neste caso, pop() funciona para desempilhar, removendo o elemento do fim do vetor de dados.
Em um ambiente de produção, o usuário desse sistema acionou a função pop, porém a estrutura de dados estava vazia. Nessa situação específica, descreva o comportamento da pilha mediante a execução da função pop.

Soluções para a tarefa

Respondido por Usuário anônimo
0

São exemplos de uso de pilha em um sistema:

Funções recursivas em compiladores;

Mecanismo de desfazer/refazer dos editores de texto;

Navegação entre páginas Web;

etc.

A implementação de pilhas pode ser realizada através de vetor (alocação do espaço de memória para os elementos é contígua) ou através de listas encadeadas.

Numa pilha, a manipulação dos elementos é realizada em apenas uma das extremidades, chamada de topo, em oposição a outra extremidade, chamada de base.

Operações com Pilha:

Todas as operações em uma pilha podem ser imaginadas como as que ocorre numa pilha de pratos em um restaurante ou como num jogo com as cartas de um baralho:

criação da pilha (informar a capacidade no caso de implementação sequencial - vetor);

empilhar (push) - o elemento é o parâmetro nesta operação;

desempilhar (pop);

mostrar o topo;

verificar se a pilha está vazia (isEmpty);

verificar se a pilha está cheia (isFull - implementação sequencial - vetor).

Perguntas interessantes