Informatică, întrebare adresată de vladislav2464828, 8 ani în urmă

VA ROG AJUTOR PASCAL!!!

Elaboraţi o procedură recursivă care parcurge un arbore binar în ordinea:
a) RDS (rădăcina – subarborele drept – subarborele stîng);
b) DRS (subarborele drept – rădăcina – subarborele stîng);
c) DSR (subarborele drept – subarborele stîng – rădăcina). Transcrieţi procedura elaborată într-o formă nerecursivă.

Răspunsuri la întrebare

Răspuns de boiustef
1

a) în inordine (SRD) – se parcurge recursiv mai întâi fiul (subarborele) stâng, apoi rădăcina, apoi fiul (subarborele) drept.

b) în postordine (SDR) – se parcurge mai întâi fiul stâng, apoi cel drept, apoi rădăcina.

c) în preordine (RSD) – mai întâi se parcurge rădăcina, fiul stâng apoi fiul drept.

procedure preordine (a: arbore);

         begin

           if a <> nil then

              begin

              Write(A^.info, ',');

              preordine(A^.sting);

              preordine(a^.drept);

              end;

         end;

procedure inordine (a: arbore);

         begin

           if a <> nil then

              begin

              inordine(A^.sting);

              write(a^.info,',');

              inordine(a^.drept);

              end;

         end;

procedure postordine (a: arbore);

         begin

           if a <> nil then

              begin

              postordine(A^.sting);

              postordine(a^.drept);

              write(a^.info,',');

              end;

         end;


vladislav2464828: Am uitat sa adaug o poza, o puteti vedea la tema: https://brainly.ro/tema/5879084
boiustef: aici nu era nevoie de poză ...
Alte întrebări interesante