Percurso em pré-ordem de uma árvore binária

O percurso em pré-ordem de uma árvore é um procedimento recursivo no qual primeiro se visita um nó, depois a sua subárvore esquerda e, por fim, a sua subárvore direita:

  1. Visitar o nó atual

  2. Visitar a subárvore esquerda (node.left)

  3. Visitar a subárvore direita (node.right)

Dada uma árvore binária, pede-se que realizes um percurso em pré-ordem sobre ela.

Entrada

A entrada contém inteiros separados por espaço que representam os valores dos nós da árvore binária. A ordem dos valores é fornecida conforme a descrição anterior (percorrendo sempre da subárvore esquerda para a subárvore direita). Um valor de 0 significa que o nó não existe. Garante-se que a árvore binária de entrada é válida.

Saída

O programa deve imprimir os valores dos nós de uma árvore binária ao realizar um percurso em pré-ordem. Todos os valores devem ser separados por um espaço.

Exemplos

Entrada

Saída

1 2 3 4 5 8 9 0 0 0 0 0 0 6 7 0 0 0 0

1 2 4 8 9 5 3 6 7

1 2 3 4 5 8 0 0 0 0 0 6 7 0 0 0 0

1 2 4 8 5 3 6 7

1 2 3 4 5 0 0 0 0 6 7 0 0 8 9 0 0 0 0

1 2 4 5 3 6 7 8 9

1 2 3 4 5 0 0 7 8 0 0 0 0 0 6 0 0

1 2 4 5 7 8 3 6

Explicação

  1. Exemplo 1:

    profound.academy-Binary-tree-5.drawio (1).png
  1. Exemplo 2:

    profound.academy-Binary-tree-6.drawio (1).png
  1. Exemplo 3:

    profound.academy-Binary-tree-3.drawio (3).png
  1. Exemplo 4:

    profound.academy-Binary-tree-4.drawio (4).png

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue