Ich habe die folgenden zwei Klassen für Knoten und BaumWie erstelle ich einen Kombinationsbaum in Python?
Knoten:
class Node:
def __init__(self, identifier):
self._children = []
self._identifier = identifier
def add_children(self, node):
self._children.append(node)
def get_children(self):
return self._children
Baum mit Ebenen:
class Tree:
def __init__(self):
self._levels = {}
def add_levels(self, index, nodes):
self._levels[index] = nodes
def __getitem__(self, index):
# further stuff
return self._levels[index]
def __len__(self):
return len(self._levels)
Ich möchte eine Kombination Baum bauen, wie unten gezeigt. Der Identifizierer jedes Knotens ist gegeben n (zum Beispiel ist 12, 13, 23 bekannt). Wie kann ich den Baum rekursiv erstellen, so dass jede Ebene des Baums eine Liste von Knoten enthält?
Muss dies "rekursiv" gemacht werden? – davedwards
Nicht unbedingt rekursiv. Das ist nur mein Vorschlag. – Alberto
Cool, nun konnte ich den Baum "bauen", wie in der Antwort unten. Gibt es mehr, was getan werden muss? – davedwards