[python] ukazatele
Petr Prikryl
Prikryl na skil.cz
Pondělí Leden 24 09:51:30 CET 2005
> From: Josef Skladanka...
> muze to byt nejak takhle ?
>
> class Uzel:
> def __init__(self,idata):
> self.left=NULL
> self.right=NULL
> self.data=idata
(Nedoporučuje se používat tabulátory.)
> [...]
> muze to byt tak ??
Jo. Jen místo NULL se používá None, což
je reference na speciální objekt, která se
používá v podobném významu, jako NULL
pro ukazatel v C.
> def pridej_vlevo(self, idata):
> pom=Uzel(idata)
> self.left=pom
idata se může klidně jmenovat data.
Tady by se možná mělo testovat, jestli
vlevo už nic nevisí. Pokud ano, může
se původní podstrom stát například
pravým nebo levým podstromem nového uzlu.
Pokud to chci jen kontrolovat, můžu použít
assert:
def pridej_vlevo(self, data):
assert self.left is None
self.left = Uzel(data)
nebo výše zmíněná úprava:
def pridej_vlevo(self, data):
novy_uzel = Uzel(data)
novy_uzel.right = self.left
self.left = novy_uzel
P.
--
Petr Prikryl (prikrylp at skil dot cz)
Další informace o konferenci Python