Gepostet: |
Ternärbaum und Blätter ersetzen mit map? | ||||||||||
Hallo, mir tut sich gerade ein Problem auf und zwar folgendes: Ich habe einen ternären Baum und möchte nun mit Hilfe einer Map-Funktion alle Blätter im Baum ersetzen. Die Blätter in dem Baum sind Strings und sollen durch diesen Datentyp erstetzt werden: data Farbe = Rot | Gelb | Blau deriving (Eq,Show), d.h. hat ein Blatt den String "Rot", soll Rot aus dem Datentyp Farbe eingesetzt werden, usw. Eine Funktion die auf einem Baum mapt habe ich schon, aber wie schreibe ich die zu mapende Funktion, die mir die Strings ersetzt? Vielleicht hat ja jemand Tipps und ein paar Hilfestellungen für mich ;-) Matthias |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Hallo, also das Stringersetzen ist einfach: toColor :: String -> Farbe Es geht auch noch komfortabler, wenn auch weniger flexibel: data Farbe = Rot | ... deriving (Eq, Show, Read) Beide Versionen funktionieren aber nur, falls keine fehlerhaften Farben eingegeben werden, z.B. "Gleb". Sollen fehlerhafte Eingaben abgefangen werden, könnte man das Ergebnis in einem Maybe kapseln. Viele Grüße, Siracusa |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
ah cool, danke. Ich werde das nachher mal ausprobieren. Interessant, dass das String ersetzen doch so einfach ist ;-) funktioniert alles super - habe es eben getestet - danke!!! |
|||||||||||
Zum Seitenanfang | |||||||||||