Potresti crearti una funzione che scandisce l'intera lista...poi se trova un elemento uguale ritorna l'indice dell'elemento uguale all'altro.Dopodichè tramite un'altra funzione che riceve come parametro il numero progressivo del nodo lo elimina.
Per spiegarmi,una cosa del tipo:
codice://Funzione ottieni indice int indice = 0; supporto = lista->next; while(lista->next!=NULL) { while(supporto!=NULL) { if (lista->val == supporto->val) return indice; indice++; supporto = supporto->next; } lista = lista->next; } return -1; //Se non trova nessun valore uguale ritorna -1 che annuncia un esito negativo } //funzione elimina nodo void eliminanodo(Tlista* &lista,int indice) { //scorri la lista fino a quando non arrivi al nodo giusto e poi lo elimini }

Rispondi quotando