Ragazzi mi date una mano con questo esercizio?
Scrivere una funzione iterativa che, data una lista semplice disordinata l, restituisca una lista ottenuta da l scambiando il nodo con il valore minimo con il nodo di testa.
[codice-c:3fk2io58]TList list_swap_min_with_head(TLista lista){
TNode *first, *node_min,*prec,*curr;
curr=lista;
first=list;
prec=NULL;
if(list_is_empty(lista)) // Verifica se la lista è vuota
return lista;
nod_min = list_min_search(lista); // Cerca il nodo con il valore minimo
// Cerca il nodo precedente a quello dove c'è il minimo
while(curr != nod_min){
curr=curr->link;
prec=curr;
}
prec->link = first;
first->link = nod_min->link;
node_min ->link = lista->link;
return nod_min;
}[/codice-c]
E' fatta bene?
Corsi di Laurea
ROX @ Unisa - Forum degli studenti di Ingegneria utilizza i cookie. Se prosegui la navigazione accetti il loro uso.
Accetto l'uso dei cookie