Pilhas: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 13: Linha 13:
* '''''push''''': Quando um elemento é inserido, ou '''empilhado''', na pilha;
* '''''push''''': Quando um elemento é inserido, ou '''empilhado''', na pilha;
*'''''pop''''': Quando um elemento é extraído, ou '''desempilhado''', da pilha.
*'''''pop''''': Quando um elemento é extraído, ou '''desempilhado''', da pilha.
;Funções para operar com pilhas:


Considere uma pilha '''s''' e um item '''i''', a função
Considere uma pilha '''s''' e um item '''i''', a função
Linha 21: Linha 23:
  i = pop(s);
  i = pop(s);
extrai um item do topo da pilha.
extrai um item do topo da pilha.
Outra operação que pode ser utilizada é verificar o item do topo da pilha, sem extrai-lo
i = top(s);


Não existe um limite máximo para o número de item em uma pilha. Entretanto, se uma tiver um só elemento e ele for extraído, teremos a '''pilha vazia'''. Portanto, antes de utilizar o operador '''pop''', precisamos verificar se a pilha não está vazia.
Não existe um limite máximo para o número de item em uma pilha. Entretanto, se uma tiver um só elemento e ele for extraído, teremos a '''pilha vazia'''. Portanto, antes de utilizar o operador '''pop''', precisamos verificar se a pilha não está vazia.
Linha 27: Linha 32:
  empty(s);
  empty(s);
verifica se a pilha está vazia ou não.
verifica se a pilha está vazia ou não.
Outra operação que pode ser utilizada é verificar o item do topo da pilha, sem extrai-lo
i = stacktop(s);


==Exemplo de aplicação de pilhas==
==Exemplo de aplicação de pilhas==

Edição das 15h00min de 5 de agosto de 2014

Pilhas

Uma pilha é um conjunto ordenado de itens, na qual novos item podem ser inseridos ou extraídos a partir de seu topo [1].

Uma pilha é um objeto dinâmico, constantemente mutável a partir da inserção ou extração de itens, sempre a partir de seu topo.

Quando um novo item é inserido na pilha, ele passa a ocupar seu topo. Neste caso, o topo é deslocado para cima de modo a corresponder ao novo primeiro elemento. Quando um item é removido, o topo da pilha é deslocado para baixo, para apontar ao novo primeiro elemento.

Operações primitivas com pilhas [1]

As duas operações primitivas para lidar com pilhas são:

  • push: Quando um elemento é inserido, ou empilhado, na pilha;
  • pop: Quando um elemento é extraído, ou desempilhado, da pilha.
Funções para operar com pilhas

Considere uma pilha s e um item i, a função

push(s, i);

insere o item na pilha.

Por sua vez a função

i = pop(s);

extrai um item do topo da pilha.

Outra operação que pode ser utilizada é verificar o item do topo da pilha, sem extrai-lo

i = top(s);

Não existe um limite máximo para o número de item em uma pilha. Entretanto, se uma tiver um só elemento e ele for extraído, teremos a pilha vazia. Portanto, antes de utilizar o operador pop, precisamos verificar se a pilha não está vazia.

A operação

empty(s);

verifica se a pilha está vazia ou não.

Exemplo de aplicação de pilhas

Referências

  1. 1,0 1,1 TENENBAUM, A. A.; LANGSAM, Y.; AUGENSTEIN, M.J. Estruturas de dados usando C, capítulo 2: A Pilha, São Paulo: Makron Books, 1995.

--Evandro.cantu (discussão) 16h49min de 17 de julho de 2014 (BRT)