trovo difficoltà a dare la versione iterattiva di un funzione ricorsiva, sò che una funzione ricorsiva è una funzione che richiama se stessa dividendo il problema in tanti piccoli problemi più piccoli solitamente composta da if else, mentre l'iterattiva è composta dai costrutti for e while. ma nonostante ciò il tutto non mi sembra ancora chiaro spero possiate aiutarmi.
la funz che dovrei trasmormare in iterattiva è questa elencata qui sotto, sopponendo di aver dichiarato la struttura btree composta da int val,btree*ltree*,*rtree; e aver implementato i nodi dell'albero.
codice:bool search(btree *t, int n){ if (t == NULL) return(false) ; else if (t->val == n) return(true) ; else return(search(t->ltree,n) || search(t->rtree,n)) ; }