J'ai besoin de votre aide pour résoudre ces problèmes. Je résolus en studio visuel une fonction récursive pour calculer la hauteur de l'arbre n-aire. Quand je l'ai testé dans un petit arbre, cela m'a donné la valeur de la hauteur. Cependant, lorsque j'ai compilé le code d'une plus grande quantité de données, l'exécution a pris plus de 3 jours sans résultats. La fonction i utilisé est le suivant:une fonction récursive pour calculer la hauteur de l'arbre n-aéré
unsigned int Height(NaryNode *root)
{
unsigned int HeightMax = 0;
unsigned i;
for (i = 0; i < root->nchild; i++)
{
if (Height(root->child[i])>HeightMax)
HeightMax = Height(root->child[i]);
}
return (HeightMax + 1);
}
Nous vous remercions à l'avance ..
votre appel récursif n'a pas de cas de base comme - 'if (root == NULL) return 0;' –
@GAURANGVYAS Il n'y a pas besoin, la fonction se déplace vers le bas et commence à la racine. – riodoro1
@ riodoro1 Je ne comprends pas. –