Răspuns :
S - arbore stâng, R - rădacina, D - arbore drept.
Inordinea e de forma: S R D
Preordinea e de forma: R S D
Postordinea e de forma: S D R
in(Arbore) = (d b e a f c g)
pre(Arbore) = (a b d e c f g)
⇒ R = {a}, S = {b,e,d}, D = {c,f,g}
post(S):
- in(S) = (d b e)
- pre(S) = (b d e)
⇒ R = {b}, S = {d}, D = {e} ⇒ post(S) = (d e b)
post(D):
- in(D) = (f c g)
- pre(D) = (c f g)
⇒ R = {c}, S = {f}, D = {g} ⇒ post(D) = (f g c)
⇒ post(Arbore) = post(S) post(D) post(R) = (d e b f g c a)
Răspuns corect C)
Răspuns:
C
Explicație:
Parcurgerea in preordine - RSD (radacina, stanga, dreapta - radacina, subarbore stang, subarbore drept).
Parcurgerea in inordine - SRD (stanga, radacina, dreapta - subarbore stang, radacina, subarbore drept).
Parcurgere in postordine - SDR (stanga, dreapta, radacina).
Daca avem parcurgerea in inordine = d b e a f c g, avem radacina in mijloc: a, subarborele stang: d b e -> radacina acestui arbore(si descendentul stang al lui a) este b, si avem nodurile d (descendent stang al lui b) si e (descendent drept al lui b). Subarborele drept = f c g -> radacina subarborelui drept(si descendentul drept al lui a) este c si are nodurile f(descendentul stang al lui c) si g(descendentul drept al lui c).
Am pus arborele in atasament.
Pentru parcurgerea in preordine(RSD- radacina,stanga,dreapta), avem:
a - radacina arborelui
b d e - subarborele stang-> b - radacina, d -descendent stang, e-descendent drept
c f g - subarborele drept -> c - radacina, f - descendent stang, g - descendent drept
Pentru parcurgerea in postordine(SDR- stanga, dreapta, radacina):
Prima data, subarborele stang:
d e b(descendent stang, descendent drept, radacina)
Apoi subarborele drept:
f g c(descendent stang, descendent drept, radacina)
Si apoi radacina arborelui, a.
Daca le unim, avem d e b f g c a.(raspuns: c)