![]() |
Prenotazioni | | | Algo | | | Arch | | | Calcolabilita | | | Grafica3d | Prog | Reti | | | SO | | | Corsi_esterni | | | Progetti | | | Commissioni | | | TWiki |
|
|
|
Homework 8 - alberi binariVedi anche: DomandeHomework8aa0203, SoluzioneHomework8aa0203, RisultatiHomework8aa0203.
Obiettivi
Alberi binariUn albero binario è composto da nodi formati da 3 campi:
Parlando di alberi di usano i seguenti termini:
Esempi
Negli esempi:
OrdinamentiPreordineLa lettura (o scrittura) in preordine viene eseguita ricorsivamente seguendo il seguente schema:
InordineLa lettura (o scrittura) in inordine viene eseguita ricorsivamente seguendo il seguente schema:
PostordineLa lettura (o scrittura) in postordine viene eseguita ricorsivamente seguendo il seguente schema:
SvolgimentoSi scriva un programma C che legge da stdin un albero binario in preordine e lo stampa su stdout in postordine seguendo il formato specificato qua sotto sia per l'input che per l'output .
Formato del grafoNel seguito<esiste sottoalbero ...> può valere:
<sottoalbero XXX (se esiste)> indica che:
PreordineIl grafo (in preordine) viene specificato da una successione di righe che seguono il formato seguente:<valore della radice> <esiste sottoalbero sinistro> <esiste sottoalbero destro> <sottoalbero sinistro (se esiste)> <sottoalbero destro (se esiste)>
InordineIl grafo (in inordine) viene specificato da una successione di righe che seguono il formato seguente:<esiste sottoalbero sinistro> <esiste sottoalbero destro> <sottoalbero sinistro (se esiste)> <valore della radice> <sottoalbero destro (se esiste)>
PostordineIl grafo (in postordine) viene specificato da una successione di righe che seguono il formato seguente:<esiste sottoalbero sinistro> <esiste sottoalbero destro> <sottoalbero sinistro (se esiste)> <sottoalbero destro (se esiste)> <valore della radice>
Esempio di formato usato per input e/o outputEcco le diverse rappresentazioni di un grafo:
OpzionaleSi faccia in modo che il programma possa accettare sulla riga di comando un parametro che può valere:
-- AndreaSterbini - 17 Dec 2002
|
|
Programmazione1.HomeWork8aa0203 r1.9 - 30 Sep 2003 - 13:15 GMT - AndreaSterbini Programmazione1.HomeWork8aa0203 moved from Programmazione1.HomeWork8 on 30 Sep 2003 - 13:09 by AndreaSterbini - put it back | Copyright © 2000 by the
contributing authors. All material on this collaboration tool is the
property of the contributing authors. Ideas, requests, problems regarding TWiki? Send feedback. |