Untitled
unknown
plain_text
2 years ago
1.4 kB
4
Indexable
class Node: def __init__(self,info): self.__info = info self.__prox = None def __str__(self): return str(self.__info) def setProx(self,prox): self.__prox = prox def getProx(self): return self.__prox from Node import Node class Pilha: def __init__(self): self.__topo = None self.__tamanho = 0 def estaVazia(self): return self.__tamanho == 0 def empilha(self, info): novoNodo = Node(info) if not self.estaVazia(): novoNodo.setProx(self.__topo) self.__topo =novoNodo self.__tamanho = self.__tamanho + 1 def desempilha(self): if self.estaVazia(): return None nodo = self.__topo self.__topo = nodo.getProx() self.__tamanho = self.__tamanho-1 return nodo def topo(self): return self.__topo def tamanho(self): return self.__tamanho def __str__(self): if self.estaVazia(): infos = "Pilha Vazia" else: infos = "TOPO->" nodo = self.__topo while nodo is not None: infos += str(nodo) nodo = nodo.getProx() if nodo is not None: infos +="->" return infos
Editor is loading...