Avendo una lista di interi
codice:
typedef struct N{ 
int data; 
struct N * next; 
} Node; 

typedef Node *List;
Dovrei fare una funzione che metta in ordine gli interi, ho fatto così, ma proprio non va.. qualcuno può dirmi dove sbaglio? Grazie

codice:
void ListaOrdinata (List *lista) { 
List sort; 
int flag, temp;
flag = 1; 

while (flag) { 
     flag = 0; 
     for (; sort->next != NULL; sort = sort->next) {
           if (sort->data > (sort->next)->data) { 
                temp = sort->data; 
                sort->data = (sort->next)->data; 
                (sort->next)->data = temp;
                flag = 1; // Se una coppia è fuori posto, flag = 1 
} } } }