Visualizzazione dei risultati da 1 a 4 su 4

Discussione: stampa albero

  1. #1

    stampa albero

    Ciao a tutti, come faccio a stampare su finestra dos un albero?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: stampa albero

    Originariamente inviato da Number22
    come faccio a stampare su finestra dos un albero?
    Dipende molto da come lo vuoi "vedere" a livello visivo. Se ti basta ad esempio stampare ogni nodo su una riga e che la "profondità" si veda con una "indentazione" fatta con N spazi, è tuttosommato semplice.

    Usi ovviamente la ricorsione, fai un metodo ricorsivo che riceve nodo e "livello" (un int). Stampi N spazi in base al livello, poi stampi il nodo e newline. Vai in ricorsione sui figli aggiungendo 1 al livello.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Ad esempio:
    A (
    B
    C (
    D
    )
    E
    )
    - la radice è A;
    - A ha tre figli: B, C, E;
    - C ha un figlio: D.

    Non ho la minima idea di come fare!

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Number22
    Ad esempio:
    A (
    B
    C (
    D
    )
    E
    )
    - la radice è A;
    - A ha tre figli: B, C, E;
    - C ha un figlio: D.

    Non ho la minima idea di come fare!
    Qui non vedo "indentazione" (quindi non c'è bisogno di "sapere" il livello di profondità).
    Basta che fai un metodo ricorsivo che riceve un nodo. Stampi il nodo, poi verifichi se ha figli. Se ne ha stampi '('. Quindi vai a capo (in ogni caso).
    Poi cicli sui figli e invochi ricorsivamente il metodo con il figlio i-esimo.
    Finito il ciclo, sapendo che appunto figli ce n'erano, stampi una riga con ')'.

    E la cosa funziona perfettamente, in generale.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.