Salve,

le liste sono dei dati:

codice:
struct nodo{
       int key;
       nodo* next;};
typedef nodo* pnodo;
delle strutture composte da un dato e un puntatore alla struttura nodo succeva fino ad arrivare alla struttora con next=0, che rappresenta la fine della lista.

La mia domanda è: come posso creare una funzione che sia in grado di scambiare due elementi nella lista?

con gli array farei una cosa del genere:

codice:
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
se volete vi posto altre funzioni per operare nella lista come esempio.
Grazie in anticipo.