ti ringrazio
ancora una domanda,calcolare la somma dei nodi a un livello di un albero è come sommare i nodi ad una certa profondità?
ti ringrazio
ancora una domanda,calcolare la somma dei nodi a un livello di un albero è come sommare i nodi ad una certa profondità?
scusate,se avessi un' ulteriore complicazione,come posso fare se non potessi "portare" il terzo parametro di livello corrente,ma solo albero e liv?
Una soluzione potrebbe essere per esempio questa: quando fai la chiamata ricorsiva diminuisci level di 1;poi al posto di questo controllo
ne puoi fare uno di questo tipo :codice:if(currentLevel == level)
Anche se il modo adottato fino ad ora era più chiaro diciamocodice:if(level == 0)Ciao
![]()
grazie mille,ho risolto
se invece dovessi fare la somma dei nodi in pos multipla a x,senza passare il parametro pos come posso fare?codice:int sommapos(bst *a,int pos,int x){ int k; if(a==NULL) return 0; else{ if(pos%x==0) return a->val+sommapos(a->left,pos+1,x)+sommapos(a->right,pos+1,x); else return sommapos(a->left,pos+1,x)+sommapos(a->right,pos+1,x);}}
pos dove lo inizializzo?
Grazie mille in anticipo