Generador de camins en un arbre binari

Donat un arbre binari d’enters, es vol generar tots els camins possibles des de l’arrel fins a les fulles (de l’esquerra cap a la dreta). Cada camí es representa com una llista d’enters corresponent als valors dels nodes que el formen.

Per a fer-ho, escriu un generador que implementi la següent capçalera:

    def genera_camins(arbre: Arbre) -> Iterator[list[int]]

on Arbre és un arbre binari definit per:

    @dataclass
    class Node:
        x: int
        fe: Arbre
        fd: Arbre

    Arbre: TypeAlias = Node | None

El programa principal i l’esquelet del programa ja es dónen implementats, descarrega’l! L’entrada consisteix en la descripció d’arbres binari en preordre, on les fulles estan indicades amb el valor 1-1. La sortida és el conjunt de tots els camins des de l’arrel fins a alguna fulla, representats com a llistes d’enters en ordre d’esquerra a dreta i obtinguts amb el generador.

Informació del problema

Autoria: Jordi Petit

Generació: 2026-06-02T15:43:21.980Z

© Jutge.org, 2006–2026.
https://jutge.org