0
J'ai le code récursif suivant que je veux changer en code itératif. Je ne sais pas par où commencer car la fonction est très complexe avec des appels récursifs à deux endroits. Des implémentations itératives possibles à la fonction ci-dessous?Ecriture du code récursif itérativement
int ncip(int dim, double R){
int n, r = (int)floor(R);
if (dim == 1)
return 1 + 2*r;
n = ncip(dim-1, R); // last coord 0
for (int i=1; i<=r; ++i){
n += 2*ncip(dim-1, sqrt(R*R - i*i)); // last coord +- i
}
return n;
}
Vous devriez vérifier le site de ce mec si vous n'avez pas encore: https://monsiterdex.wordpress.com/2013/04/05/entier-treillis-dans-n-dimensionnel-sphère-compte-des-points-avec-entier-coordonne-utilise-parallèle-programmation-partie-i / –