Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

HW4BIS esercizio 2 sono bloccato

DRDLCN (8070 points)
28 68 104
in HW4bis by (8.1k points)
recategorized by

leggendo su q2a ho visto che una strada per risolvere l'es è creare liste di questo genere...['  80  ',' _|_  ','|   | ','70  90']

ma non ho ben capito come, come le metto le foglie dello stesso padre sullo stesso elemento della lista?

io avevo pensato a mettere tutto quello che ha uguale lunghezza dalla radice in un unico elemento ma non so se posso aggiungere metodi nel file albero.py 

1.1k views

1 Answer

_andrea_ (45670 points)
13 42 297
by (45.7k points)
Le metti dando per scontato che la ricorsione tu ritorni l'albero giusto, e unendoli insieme. Per capire come, usa alberi di prova prima con un solo figlio, poi due figli foglie, poi due figli che hanno uno o due figli ciascuno. Quando hai capito i casi facili, la ricorsione fa il resto
_andrea_ (45670 points)
13 42 297
by (45.7k points)
No deve diventare una stringa che ora non ho voglia di scrivere ma deve avere i numeri, gli spazi, i collegamenti e gli accapo nel posto giusto, come negli esempi nel testo
E
Emanuelebev (720 points)
6 17 24
by (720 points)
non posso manipolare questa stringa in modo che risulti giusta?
_andrea_ (45670 points)
13 42 297
by (45.7k points)
Ma tu parti da un albero e devi trovarti la stringa che lo rappresenta. La stringa devi crearla da 0 ma piuttosto che farti una lista di liste di stringhe e poi trasformarle nel risultato fatti direttamente il risultato
D
Deacoon (9100 points)
11 34 53
by (9.1k points)

['  80  ',' _|_  ','|   | ','70  90']

come si fa questa lista se i figli sono piu di due?

andrea.sterbini (207940 points)
756 1270 2377
by (208k points)
edited by

Cerca di ragionare come se tu fossi un editor di testo (per esempio Notepad++) e dovessi incollare due alberi uno a fianco all'altro aggiungendo le righe sopra e gli spazi in mezzo:

  • devi fare in modo che i due alberi abbiano la stessa altezza aggiungendo righe fatte di soli spazi in fondo al più corto
  • devi concatenare le righe dei due alberi aggiungendo gli spazi in mezzo
  • devi aggiungere le righe superiori che formano il disegno del nodo padre

E questo va fatto ricorsivamente su tutto l'albero