Herausforderung: Ermitteln Sie bei einem * nicht leeren * Binärbaum die maximale Pfadsumme. Für dieses Problem wird ein Pfad als eine beliebige Folge von Knoten von einem Startknoten zu einem beliebigen Knoten im Baum entlang der Eltern-Kind-Verbindungen definiert. Der Pfad muss mindestens einen Knoten enthalten und muss nicht durch die Wurzel gehen:
Example #1: Input: 4 / \ 5 6 Output: 15
Beispiel #2:
Input: -10 / \ 9 20 / \ 15 7 Output: 42
Die Herausforderung
Wie der Name schon sagt, ist ein binärer Baum eine beliebte Art von baumbasierter Datenstruktur. Um ihre Zeit- und Raumeffizienz zu unterstützen, werden Bäume häufig durch einen Schlüssel und zwei oder mehr Blattknoten dargestellt, ähnlich den folgenden Strukturen:
As one may guess, recursion is also a common property of tree-based structures. Obwohl die meisten rekursiven Funktionen in realen Anwendungen verpönt sind, ermöglichen Bäume bestimmte Effizienzen, da jeder Blattknoten auch einen anderen Baum darstellen kann:
Leave a Reply