Listes chaînées

Fermé
yNT - 7 mai 2020 à 18:05
 yNT - 7 mai 2020 à 19:10
Bonjour, je dois écrire une procedure en c qui divise une liste L en deux L1 et L2 la procedure doit prendre deux param la liste en question et un entier K. L1 doit prendre les elements de la liste L (du debut à K) et L2 (de K+1 à fin). MAIS par la RECURSIVITE. je vous mets mon code. merci d'avance.
void DivEn2(Liste L, int k)
{
if(EstVide(L) || EstVide(Reste(L)))
printf("Rien a faire \n");

else
{
Liste L1 = consvide(), L2 = consvide();
int i = nbElment(L);

if( k == 0 )
{
L1 = consvide();
L2 = L;
}

else if(k >= i)
{
L1 = L;
L2 = consvide();
}

else
{
L1 = DivEn2(L, k);
L2 = DivEn2(L, k+1);
}
}
}



Configuration: Windows / Chrome 80.0.3987.163

2 réponses

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
7 mai 2020 à 18:19
bonjour,
1) as-tu une question?
2) quand tu partages du code, merci d'utiliser les balises de code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
3) comment as-tu prévu de retourner les deux listes crées par la procédure?
0
Merci pour la remarque. mon code ne s’exécute pas je ne sais pas pourquoi suis debutant en programmation. la version itérative fonctionne. mais j'arrive pas avec la recursive.
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
7 mai 2020 à 18:34
peux-tu nous montrer la version itérative?
0
yNT > yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024
7 mai 2020 à 19:10
Je vous l’envoie dès que je rentre.
0