![]()
salve a tutti gli amici del forum!
volevo chiedere se gentilmente qualcuno ha idea di come si possa ordinare una lista concatenata di interi in modo crescente.
io ho provato con il bubblesort, ma non mi funziona (di certo sbaglio qualcosa):
dove head è la testa della lista e d e il numero degli elementi. il campo data della lista è una struttura nei cui campi c'è "eta" che è un intero. Lo scopo è mettere in ordine crescente la lista concatenata a seconda dei valori di eta.Codice PHP:void bubble(LINK head, int d)
{
int i, x;
LINK tail = head;
LINK aux,asd;
for (i = 0; i < d - 1; ++i)
{
while(tail -> next -> next != NULL)
{
if ((tail->data.eta) > (head->next->data.eta))
{
printf("%d %d",tail->data.eta,tail->next->data.eta);
//system("PAUSE");
asd = tail;
aux = tail -> next -> next;
tail = tail->next;
tail -> next = asd;
tail -> next = aux;
}
else
tail = tail -> next;
}
}
aiutatemi per favore!!
![]()

):
Rispondi quotando