Nadesłany przez Jakub Konieczny, 07 kwietnia 2011 01:20
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.Pobierz pełne rozwiązanie.
stos_1_py.py:
#stos #www.algorytm.org #!/usr/bin/python # -*- coding: utf-8 -*- class StosElement: #klasa elementu stosu def __init__(self, val=0, prev=None): self.v=val #wartość self.prev=prev #wskaźnik do elementu pod class Stos: #klasa stosu def __init__(self): self.gora=None #w konstruktorze definiuje, że nie ma elementów def wstaw(self, val): #metoda wstawiania elementu el=StosElement(val, self.gora) #podanie jako argumentu aktualnego #wskaźnika do górnego elementu self.gora=el def zdejmij(self): if self.gora!=None: #zabezpieczenie: jeżli nie ma górnego elementu, #nie będzie odwoływać się do wskaźnika None self.gora=self.gora.prev def pobierz(self): #zwraca wartość górnego elementu if self.gora!=None: return self.gora.v return None def jestPusty(self): #sprawdza, czy jest pusty if self.gora!=None: return False return True s=Stos() s.wstaw(1) print(s.pobierz()) s.wstaw(2) print(s.pobierz()) s.wstaw(3) print(s.pobierz()) s.zdejmij() print(s.pobierz()) s.zdejmij() print(s.pobierz()) print("Jest pusty: "+str(s.jestPusty())) s.zdejmij() print(s.pobierz()) print("Jest pusty: "+str(s.jestPusty()))