salve, sto leggendo da un paio d'ore questo programma che mi è stato dato e non riesco proprio a capire come funzioni. provando a seguire passo passo quello che c'è scritto, a me vengono risultati completamente diversi da quelli del compilatore..Non capisco prorpio la logica che c'è dietro questo algoritmo. qualcuno mi saprebbe spiegarne il funzionamento?
codice:
list InsertCliente(element e, list l){
list l1 = NULL, root = l;
list t; t = cons(e, l);
if(empty(l)){ return t; }
while(!empty(l)){
l1=l;
l = tail(l);
}
l1->next = t;
t->next = l;
return root;
}