MedieC++17

Codifică forma unui arbore binar

Cerință

Codifică arborele în preordine: valoarea nodului, codul subarborelui stâng, apoi codul subarborelui drept. Un subarbore absent este reprezentat prin #. Aceste marcaje permit reconstrucția fără ambiguități.

Tip de problemă: Serialize and Deserialize a Binary Tree.

Date de intrare

n, apoi pentru nodurile 1..n câte o linie: valoare copil_stâng copil_drept. Rădăcina este 1; 0 înseamnă copil absent.

Date de ieșire

Tokenurile serializării, separate prin spații.

Restricții

1 ≤ n ≤ 100. Legăturile descriu un arbore binar valid și conex, fără cicluri. |valoare| ≤ 1000000000.

Observații

Raportată de un candidat la Amazon (SDE2, Bangalore, iulie și august 2025). Adaptare Algo25: Exercițiul cere doar serializarea; explicăm și regula care permite decodarea.

Sursa relatării: https://leetcode.com/discuss/post/7132680/amazon-sde-2-bangalore-onsite-interview-pr26m/

Exemple

2 EXEMPLE

Exemplul 1

Exemplul 1 pentru „Codifică forma unui arbore binar”. Ordinea este nod, stânga, dreapta. Fiecare copil absent are propriul #, inclusiv cei doi copii ai fiecărei frunze.Exemplul 1, reprezentat vizual. Ordinea este nod, stânga, dreapta. Fiecare copil absent are propriul #, inclusiv cei doi copii ai fiecărei frunze.Mărește schema ↗

Date de intrare

3
3 2 3
1 0 0
4 0 0

Date de ieșire

3 1 # # 4 # #

Exemplul 2

Date de intrare

1
0 0 0

Date de ieșire

0 # #
UN MIC IMPULS

Ai nevoie de un indiciu?

Descoperă doar cât îți trebuie. Indiciile nu scad punctajul.

RÂNDUL TĂU

Trimite o soluție

Editor de cod

Se verifică autentificarea…

Deschide atelierul cu sugestii și teste locale în 4 limbaje →

Un pas, apoi următorul.Înapoi sus ↑