PDA

Visualizza la versione completa : [C] Piccolo Problema con alberi


orion91
26-01-2005, 00:34
Ragazzi il problema il seguente:
Ho un array di record con record "nodo" cosi composti:
int chiave
int l_indice //Indice Filgio sinistro
int r_indice //Indice Figlio destro
int indice //Identifica univocamente un nodo

Da questo array devo costruire un albero binario.

Premetto che sono gia in grado di trovare la radice tra i vari elementi dell'array, insomma so come partire, ora vorrei un aiuto per sapere come completare l'albero con una procedura ricorsiva.

Se qualcuno in grado di aiutarmi si faccia vivo ok.
Ringrazio tutti anticipatamente.

anx721
26-01-2005, 15:27
ma con quale criterio va costruito questo albero a partire dagli elementi dell'array?

infinitejustice
26-01-2005, 15:49
L'array ordinato (magari in base alla chiave) ?

Potresti usare sull'array una 'variante' del mergesort (la parte che divide - ricorsiva) nella quale, invece di chiamare poi merge(), invochi la funzione che aggiunge nodi all'albero. In tal modo potresti costruire un albero bilanciato.

Loading