Witam mam problem z napisaniem rekurencyjnej funkcji do odwracania listy. Udało mi się zrobić to iteracyjnie:
#include <stdio.h>
#include <stdlib.h>
struct el {
int klucz;
struct el *nast;
};
void Odwr(lista *l)
{
lista npocz;
lista tmp;
while((*l))
{
tmp=(*l)->nast;
(*l)->nast=npocz;
npocz=*l;
*l=tmp;
}
*l=npocz;
}
int main()
{
lista _l=0;
Odwr(&_l);
}
Jest jakis szybki sposób na zrobienie tego rekurencyjnie, bo nie mogłem nic znaleźć.