Lar Áudio O que é uma pilha? - o que é techopedia

O que é uma pilha? - o que é techopedia

Índice:

Anonim

Definição - O que significa Stack?

Uma pilha é uma estrutura conceitual que consiste em um conjunto de elementos homogêneos e baseia-se no princípio LIFO (last in first out). É um tipo de dados abstratos comumente usado com duas operações principais, a saber, push e pop. Push e pop são executados no elemento superior, que é o item adicionado mais recentemente à pilha. A operação push adiciona um elemento à pilha enquanto a operação pop remove um elemento da posição superior. O conceito de pilha é usado na programação e organização da memória em computadores.

Techopedia explica Stack

Uma pilha representa uma sequência de objetos ou elementos em um formato de estrutura de dados linear. A pilha consiste em um fundo delimitado e todas as operações são realizadas na posição superior. Sempre que um elemento é adicionado à pilha pela operação push, o valor superior é incrementado em um e, quando um elemento é retirado da pilha, o valor superior é decrementado em um. Um ponteiro para a posição superior da pilha também é conhecido como ponteiro da pilha.

Uma pilha pode ter tamanho fixo ou implementação dinâmica em que o tamanho pode mudar. No caso de pilhas de capacidade limitada, tentar adicionar um elemento a uma pilha já cheia causa uma exceção de estouro de pilha. Da mesma forma, uma condição em que uma operação pop tenta remover um elemento de uma pilha já vazia é conhecida como fluxo insuficiente.

Uma pilha é considerada uma estrutura de dados restrita, pois apenas um número limitado de operações é permitido. Além das operações push e pop, certas implementações podem permitir operações avançadas, como:

  • Espiar - Veja o item mais alto da pilha.
  • Duplicar - copie o valor do item superior em uma variável e empurre-o de volta para a pilha.
  • Trocar - Troque os dois itens mais altos da pilha.
  • Girar - Mova os elementos mais altos da pilha, conforme especificado por um número ou mova-os de maneira rotativa.

As implementações de software do conceito de pilha são feitas usando matrizes e listas vinculadas onde a posição superior é rastreada usando um ponteiro de variável ou cabeçalho, respectivamente. Muitas linguagens de programação fornecem recursos internos para suportar a implementação da pilha.

As pilhas de hardware são implementadas com a finalidade de alocação e acesso à memória usando uma origem e tamanho fixos. Registradores de pilha são usados ​​para armazenar o valor do ponteiro da pilha.

O que é uma pilha? - o que é techopedia