2010-12-13 9 views
0

Ich habe so etwas wie dieses Merge Bäume Haskell

data Tree a = Null |Nod (Tree a) a (Tree a) 

bekam, was ich will, ist eine Funktion merge erstellen, die zwei gegebene Bäume und die Wurzel des endgültigen Baum wird verschmelzen immer die Wurzel des linken Blatt des ersten Baumes. Der Zweck ist, das linke Blatt dabei zu entfernen.

+2

das Problem schlecht angegeben ist. Es gibt viele Bäume, deren Wurzel das linke Blatt des ersten Baumes ist. welches ist gewollt? und was, wenn der linke Baum null oder ein Blatt ist? Was ist dann der letzte Baum? – lijie

+0

Danke für die Antwort, die irgendjemand machen würde, aber schon löse es, machte einen dummen Fehler – Mares

Antwort

1

Etwas wie:

mergeTrees Null t2 = t2 
mergeTrees (Nod left value right) t2 = Nod (mergeTrees left t2) value right