Frage

Ich erinnere mich an eine Webseite, auf der interessante Techniken im Zusammenhang mit einer funktionalen Programmieraufgabe beschrieben wurden.Das Problem ist, dass ich mich nicht erinnern kann, was es war.

Es hatte einen binären Baumknoten (Tree left, Tree right, Data d) als Beispiel, das man so beschreiben könnte Tree*Tree*Data, oder Tree^2*Data.Dann beim Ableiten zum Beispiel von Tree, wir bekommen 2*Tree*Data.

Könnten Sie mir erklären, wofür das verwendet wird?

War es hilfreich?

Lösung

Klingt wie ein Reißverschluss.

Weiterverfolgen:Das Mantra für so etwas lautet: „Die Ableitung eines Typs ist sein Ein-Loch-Kontext.“Die Idee besteht darin, dass, wenn Sie einen Binärbaum mit einer Stelle darstellen möchten, an der Sie eine Einfügung vornehmen möchten, die Datenstruktur dafür genau ein Pfad von der Lücke bis zur Wurzel des Baums und an jedem Knoten nach oben ist Sie müssen sich merken, ob Sie von links oder rechts kamen, sowie die Daten an diesem Knoten und dessen Unterbaum, von dem Sie nicht kamen.Nun, das ist genau das Tupel von 2 (auch bekannt als links/rechts) * Daten * Baum.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top