Salve a tutti, ho scritto una funzione che mi inserisce un nuovo nodo in una lista doppiamente puntata. Adesso ho la necessità di trasformarla in modo che effettui l'inserimento ordinato per cognome...
Codice PHP:
/* Incollo la dichiarazione della struttura */
typedef struct Agenda
{
char Cognome[32];
struct Agenda next;
struct Agenda prev;
} AGENDA;
void AddNewNode
(
AGENDA **corrente, /* Puntatore al corrente */
AGENDA *TempAdd /* Struttura temporanea dove
sono memorizzati tutte le informazioni
da inserire nella struttura principale */
)
{
/* alloco un nuovo nodo */
AGENDA *nuovo = (AGENDA*)malloc(sizeof(AGENDA));
nuovo = TempAdd;
nuovo->next = NULL;
nuovo->prev = NULL;
/* taglia e cuci della lista */
if (*corrente != NULL)
{
nuovo->next = (*corrente)->next;
nuovo->prev = *corrente;
(*corrente)->next = nuovo;
}
/* aggiorno il cursore */
*corrente = nuovo;
}
ma come al mio solito mi sono perso, e non so da dove cominciare!
chi mi aiuta?