Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    13

    [C] Algoritmo d'ordinamento su lista collegata

    Questo è l'algoritmo d'ordinamento che sono riuscito a scrivere
    codice:
    x=lista;
    y=x->next;
    while(y!=NULL){
    if(strcmp(x->stringa.a, y->stringa.a)>0){
    z=x;
    x=y;
    y=z;}
    y=y->next;}
    solo che mi porta un problema, o meglio se una stringa di un elemento è "maggiore" dell'ultimo, quindi il cui puntatore è null, lo perdo...come posso risolvere questo problema??ho provato a scrivere qualcosa ma non risolvo nulla...

  2. #2
    non s'è capita molto questa domanda.

    Che intendi con " se una stringa di un elemento è "maggiore" dell'ultimo, quindi il cui puntatore è null, lo perdo" ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    13
    per esempio se c'ho una lista di elemnti(array di caratteri) in questo ordine:
    partita albero casa
    quando il programma va ad eseguire la parola partita prima viene posto dopo albero e poi dopo casa...ma essendo casa l'ultimo elemento della lista, il suo puntatore essendo null non punterà all'elemento di "partita"...forse sono stato un pò troppo complicato??xD

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    475
    E' sufficiente "ripristinare" il collegamento tra i due:

    codice:
    ultimo_elemento_lista->next = elemento_riordinato;
    Capito?
    "Let him who has understanding reckon the number of the beast, for it is a human number.
    Its number is rw-rw-rw-."

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    13
    non proprio xD
    cioè come faccio a trovare elemento riordinato??dal punto di vista della scrittura del codice perchè come idea ho capito...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.