Cum se declara un arbore binar ?

From HaskellWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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'.