Python: Eine Baumstruktur

Gegeben sei die Klasse für eine allgemeine Baumstruktur in Python.

Schreiben Sie die folgenden Mehtoden für diese Klasse.

  1. def groesse(self): Die Elemente, die in einem Baum enthalten sind, werden gezählt.
  2. def enthaelt(self,elem): Es wird getestet, ob ein bestimmtes Element im Baum gespeichert ist.
  3. def maxDepth(self): Die maximale Baumtiefe wird berechnet.
  4. def maxWidth(self): Die maximale Anzahl der Kinder der Knoten innerhalb eines Baumes wird berechnet.
  5. def elemente(self): Eine Funktion, die eine Liste aller im Baum gespeicherten Elemente Erzeugt. Die Elemente seien in Präorder sortiert.
  6. def fringe(self): Die Liste aller Blattelemente eines Baumes.
  7. def abbilden(self,f): Ein neuer Baum entsteht, indem ein Funktionsparameter auf jedes Element des Baumes angewendet wird.
  8. def longestPath(self): Die Liste der Elemente auf dem längsten Pfad im Baum wird berechnet. Gibt es mehrere gleichlange Pfade ist der linkeste zu nehmen.
  9. def faltung(self,f,start): Alle Elemente eines Baumes werden mit Hilfe einer Operatorfunktion in Präorder auf ein Startelement aufgerechnet.