Salve, da poco mi sono cimentato nella programmazione imperativa in c++.
Ho un problema relativo alle liste, non riesco ad eliminare un nodo.
Spero di riuscire a trovare una soluzione con voi, perché proprio non ne riesco a venire a capo!!
queste sono le banali strutture di riferimento:
codice:
struct nodo{ int x;
nodo *p;
};
struct lista{ nodo *n;
int c;
};
Questo è il sotto-programma:
codice:
void elimina(lista &l, nodo* &nod) //nod è il nodo da eliminare provoniente da una ricerca.
{ nodo *cursore, *eliminatore;
cursore=l.n;
while(cursore<nod){cursore=cursore->p;
if(cursore!=nod)eliminatore=cursore;
}
cout<<"cursore.."<<cursore->x;
cout<<"eliminatore.."<<eliminatore->x;
eliminatore=nod->p;
l.c--;
}