Pilha em Python - Implementação do Satck usando 2 métodos diferentes

Índice:

Anonim

Introdução ao Stack em Python

O Python Stack é geralmente uma estrutura de dados que opera com o princípio last in and first out. é um tipo de dados abstrato. Alguns exemplos freqüentes de estrutura de pilha são um baralho de cartas. Assim como seu exemplo, mesmo na arena do software, o Python Stack aplica o mesmo conjunto de protocolos. o que significa que todas as operações de dados podem ser realizadas apenas no princípio do último no primeiro a sair. em uma dica específica da instância, apenas o elemento pináculo da pilha Python pode ser acessado.

Principais características da pilha em Python

  • A ideologia chave da pilha é que ela funciona sob o princípio do primeiro a entrar.
  • As operações push e pop são usadas para inserir e excluir um elemento de uma pilha.
  • Alguns exemplos principais da pilha são a análise de texto e a conversão de expressão.

Stack de duas maneiras pode ser implementado

As três principais maneiras pelas quais uma pilha pode ser implementada são as seguintes,

  • Implementar uma pilha usando uma coleção
  • implementar uma pilha usando uma lista

1. Implementar pilha usando coleção

Coleções são tipos de dados usados ​​para armazenar coleções de dados. A estrutura de dados da pilha pode ser aplicada para praticar na programação python em uma coleção usando a classe deque. a classe deque opera basicamente na ordem LIFO. o exemplo abaixo mostra as operações de pilha usando coleções.

Código:

from country_list import countries_for_language
from collections import deque
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = deque()
for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')

Resultado :

Explicação:

  • O programa acima usa um tipo de dados de coleta para preparar a pilha. esse processo envolve a importação da classe deque na biblioteca de coleções. Aqui a importação 'country_list' é usada para retirar o catálogo de todos os países. Todos os valores do país são extraídos em uma variável de dicionário porque o extrato da biblioteca do país tem um formato de ditado em que a chave é uma notação do alfabeto sob o qual o país se enquadra e o valor é o nome do país real.
  • Para alcançar a funcionalidade de empilhamento, um objeto deque é criado. isso é do tipo deque. todos os elementos da classe country são preenchidos nesse objeto usando um loop for. este loop for constrói a funcionalidade da pilha com todas as entradas empilhadas em ordem crescente. Para elucidar que esse elemento de dados funciona exatamente como uma pilha.
  • A operação pop é aplicada. aqui cada elemento da pilha é exibido e impresso usando a função pop (). podemos notar que todo pop () imprime o nome do país mais novo no console, que neste caso está começando com a notação alfabética 'z' e imprime a notação alfabética 'a' como o último conjunto de elementos.

2. Implemente a pilha usando a Lista

Como uma coleção, a pilha python também pode ser implementada por meio de uma simples lista python. exatamente para dizer que qualquer lista declarada em python tende a agir como uma pilha por natureza. portanto, a inserção de um valor em uma lista sempre retorna o último valor nela. O exemplo de código abaixo explica a implementação de uma pilha usando uma lista,

Código:

from country_list import countries_for_language
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = () for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')

Resultado :

Explicação:

  • O programa acima usa uma lista de tipos de dados para preparar a pilha. Aqui, uma lista padrão na estrutura de dados python é usada para atingir essa funcionalidade.
  • Como o programa acima, aqui também a importação 'country_list' é usada para retirar o catálogo de todos os países. Todos os valores do país são extraídos em uma variável de dicionário porque o extrato da biblioteca do país tem um formato de ditado em que a chave é uma notação do alfabeto sob o qual o país se enquadra e o valor é o nome do país real.
  • Cada elemento da classe country é preenchido nesse objeto usando um loop. este loop for constrói a lista empilhada com todas as entradas empilhadas em ordem crescente. Para elucidar que esse elemento de dados funciona exatamente como uma pilha. A operação pop também é aplicada aqui, mas diferente de um objeto deque aqui, a operação é aplicada em uma lista python.
  • Aqui, todos os elementos da lista empilhada são exibidos e impressos usando a função pop (). Podemos notar que todo pop () imprime o nome do país mais novo no console, que neste caso está começando com a notação alfabética 'z' e imprime a notação alfabética 'a' como o último conjunto de elementos.

Operações de pilha executadas em Python

Alguns deles são apresentados abaixo:

1. Pseudocódigo para operação PUSH

  • Avalie o volume da pilha
  • Quando o estouro for atingido, notifique o status e saia do programa.
  • quando uma pilha não está transbordando, o volume pode ser incrementado e o elemento pode ser adicionado ao topo da pilha.

2. Pseudocódigo para operação POP

  • Avalie o volume da pilha
  • Quando o estouro for atingido, notifique o status e saia do programa.
  • quando uma pilha não está fluindo, o volume pode ser incrementado e o elemento pode ser adicionado ao topo da pilha.

Conclusão

A capacidade do Python de expressar a funcionalidade da pilha em várias abordagens exibe a flexibilidade dessa linguagem de programação supereficiente. O python expressa sua capacidade classificada com sua agilidade para atender quase todas as necessidades da estrutura de dados. isso torna esse idioma entre os mais preferidos na área de desenvolvimento de software.

Artigos recomendados

Este é um guia para uma pilha em Python. Aqui discutimos a introdução, Três maneiras pelas quais a pilha pode ser implementada, principais características da pilha. Você também pode consultar nossos outros artigos sugeridos para saber mais:

  1. Matplotlib em Python
  2. Número reverso em Python
  3. Compiladores Python
  4. Função Recursiva em Python