Cum se declara un arbore binar ?

From HaskellWiki
Revision as of 06:24, 3 July 2009 by Ha$kell (talk | contribs) (working)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Haskell - Un limbaj functional pur

Contactul cu un limbaj de programare nou naste intrebari, mai ales cand este vorba de un limbaj atat de inovator. Cea mai buna cale de a va familiariza cu Haskell este sa conversati cu un interpretor, cum este Hugs. Sau sa folositi GHC si sa conversati cu GHCi (GHC Interactiv).


N-ati precizat ce are in frunze si nici daca are si nodurile interioare etichetate ! Dar putem raspunde si asa:

1. Un arbore cu frunze etichetate cu etichete de tip x, fara etichete pe ramificatii se declara ca in exemplul acesta:

data Arb x = Frunza x | Ramificatie (Arbore x) (Arbore x)


2. Iar cu frunze etichetate cu etichete de tip x, cu etichete pe ramificatii se declara ca mai jos:

data Arb x = Frunza x | Ramificatie x (Arbore x) (Arbore x)

data Arb x = Frunza x | Ramificatie (Arbore x) x (Arbore x)

data Arb x = Frunza x | Ramificatie (Arbore x) (Arbore x) x

Mai sunt si alte solutii, de exemplu cu cele trei elemente ale unei ramificatii avand fiecare un nume...arbori mai rar folositi.

Un exemplu frumos era la pagina cursului de Fundamentele programarii.


Pagina indexata la indexul Categories:Ro


<= Inapoi la pagina principala Ro/Haskell.

<- Inapoi la inceputul paginii 'Intrebarile incepatorului Ro/Haskell'.