se conosci i puntatori a node allora fai
se invece conosci solo chiave prima devi trovare il nodo che corrisponde a quella chiave e poi fare come sopracodice:struct nodo{ int key; nodo* next; }; typedef nodo* pnodo; bool switch ( nodo * n1, nodo *n2 ) { if ( n1 && n2 ) { nodo * t = n1->next; n1->next = n2->next; n2->next = t; return true; } else return false; }
codice:nodo * find ( nodo *root, int key ) { nodo * n = root; while ( n && n->key != key ) n=n->next; return n; }