Código
Alguien que me lo explique en cristiano por favor?
typedef struct tnodo *pnodo;//Estructura de la lista typedef struct tnodo{ int dato; pnodo sig; }; pnodo quitar_nodo(pnodo &lista, int valor)//Metodo quitar nodo { pnodo borrado, i; if(lista==NULL){ borrado=NULL; } else{ if(lista->dato==valor){ borrado=lista; lista=borrado->sig; borrado->sig=NULL; } else{ for(i=lista;i->sig!=NULL && valor!=(i->sig)->dato;i=i->sig);//De aqui en adelante no lo tengo bien en claro, se como lo hace pero el codigo me es incomprensible if(i->sig!=NULL){ borrado=i->sig; i->sig=borrado->sig; borrado->sig=NULL; } else{ borrado=NULL; } } } return borrado; }