HoldenCaulfield1987
16-06-2011, 11:48
Spero di essere nella sezione più appropriata.
Sto studiando dal punto di vista algoritmico gli alberi binari di ricerca.
So che ad esempio per una ricerca il tempo di esecuzione è O(h), dove h è l'altezza dell'albero.
La cosa che onestamente mi fa impazzire è il COME viene calcolato quel tempo di esecuzione.
M spiego meglio:
quel tempo di esecuzione indica il numero di nodi visitati oppure il numero di chiamate ricorsive effettuate a partire dal figlio (sx o dx che sia) della radice?
A me verrebbe più facile pensare al numero di nodi visitati, però cosi non considero la visita al nodo di partenza, ovvero al nodo radice.
E' anche vero però che asintoticamente dire h (quindi tutti i nodi interni e la foglia) + 1 (la radice) è uguale a dire solo h.
Come forse avrete capito ho un po' di confusione a riguardo.
Mi date una mano?
Grazie
Sto studiando dal punto di vista algoritmico gli alberi binari di ricerca.
So che ad esempio per una ricerca il tempo di esecuzione è O(h), dove h è l'altezza dell'albero.
La cosa che onestamente mi fa impazzire è il COME viene calcolato quel tempo di esecuzione.
M spiego meglio:
quel tempo di esecuzione indica il numero di nodi visitati oppure il numero di chiamate ricorsive effettuate a partire dal figlio (sx o dx che sia) della radice?
A me verrebbe più facile pensare al numero di nodi visitati, però cosi non considero la visita al nodo di partenza, ovvero al nodo radice.
E' anche vero però che asintoticamente dire h (quindi tutti i nodi interni e la foglia) + 1 (la radice) è uguale a dire solo h.
Come forse avrete capito ho un po' di confusione a riguardo.
Mi date una mano?
Grazie