Classe per arbres P71608


Statement
 

pdf   zip

html

Considereu la següent definició incomplerta de la classe Tree que hauria d’implementar arbres generals no buits:

class Tree: def __init__(self, x): ... def add_child(self, a): self.child.append(a) def root(self): return self.rt def ith_child ... ... def num_children ... ...

Completeu l’operació __init__, l’operació ith_child que retorna l’i-èsim fill de l’arbre (comptant des de zero), i l’operació num_children que retorna el nombre de fills de l’arbre.

A més, definiu una subclasse Pre de la classe Tree, tot afegint l’operació preorder que retorna una llista amb el recorregut en preordre de l’arbre al qual s’aplica.

Sample session
>>> t = Pre(2)
>>> t.add_child(Pre(3))
>>> t.add_child(Pre(4))
>>> t.num_children()
2
>>> t.ith_child(1).add_child(Pre(5))
>>> t.preorder()
[2, 3, 4, 5]
Information
Author
Gerard Escudero i Albert Rubio
Language
Catalan
Official solutions
Python
User solutions
Python