|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2006
Città: Salerno
Messaggi: 4256
|
[c] concat liste
Codice:
typedef struct nodo *lista;
typedef struct nodo {
int val;
lista next;
} nodo;
/* prototipi di funzioni */
lista concatList(lista L1, lista L2);
/* Function: concatList
* Usage: L1 = concatList (L1, L2);
* -----------------------------------------------
* Concatena L1 e L2, creando un link fra l’ultimo nodo di L1 ed il primo di L2.
* ATTENZIONE: una delle liste, o entrambe, potrebbero essere vuote.
* Restituisce il puntatore al nodo di testa della lista così ottenuta.
*/
lista concatList (lista L1, lista L2)
{
nodo *corrente;
nodo *precedente;
if(L1==NULL) return L2;
if(L2==NULL) return L1;
corrente = L1;
while(corrente!=NULL){
precedente = corrente;
corrente=corrente->next;
}
corrente=L2;
return L1;
}
__________________
NABBA Italia Federazione Nazionale di Body Building, Fitness, Cultura sportiva, Educazione alimentare |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Aug 2005
Messaggi: 168
|
Se guardi bene hai fatto un errore piuttosto ovvio. Dopo che avrai scorso la lista l2 andrà messo in precedente->next non in corrente. Se lo metti in corrente
vai a mettere la testa della lista 2 in una variabile senza mai modificare la lista 1 |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Nov 2006
Città: Salerno
Messaggi: 4256
|
Quote:
dopo aver scorso L1, in corrente secondo me c'è il puntatore NULL dell'ultimo elemento della lista.. dici di no?
__________________
NABBA Italia Federazione Nazionale di Body Building, Fitness, Cultura sportiva, Educazione alimentare |
|
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Aug 2005
Messaggi: 168
|
Hai ragione, manca una virgola nella frase. Doveva essere:
"Dopo che avrai scorso la lista, l2 andrà " Visto che l'uscita dal while avviene quando corrente è = a NULL allora dentro corrente c'è semplicemente il valore NULL. Corrente non punta a nessuno elemento della lista, quindi è impossibile che una modifica di corrente possa in qualche modo modificare la lista. |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Nov 2006
Città: Salerno
Messaggi: 4256
|
Quote:
hai ragione.. eppur mi era venuto il dubbio...vabbè ormai l'esame è fatto (figurati che ho dimenticato anche l'istruzione "corrente = L1", quella dopo gli IF) se prendo 10/18 è già molto sto giro
__________________
NABBA Italia Federazione Nazionale di Body Building, Fitness, Cultura sportiva, Educazione alimentare |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:58.




















