Problem bei verketteten Listen (bubblesort)



  • Hallo.
    Ich habe eine doppelt verkettete Liste.
    Diese ist mit Daten ala long long int wert gefüllt und ich moechte nun mit bubblesort sortieren.
    Da ich wirklich noch Probleme habe, tausche ich erstmal nur die Werte aus und nicht den gesamten Block.
    Nun habe ich folgendes geschrieben und es sortiert auch nach Wunsch, nur wird der groesste Wert verschluckt, bzw. verschwindet ganz aus meiner Liste. 😕

    14   long long element=0;
     15   DATAINT *block;
     16   DATAINT *temp;
     17   DATAINT *temp2;
     18   for(block=first; block->right!=NULL; block=block->right)
     19   {
     20     for(temp=first; temp->right!=NULL; temp=temp->right)
     21     {
     22       if(temp->right == NULL)
     23         break;
     24       if(temp->right->num < temp->num)
     25       {
     26         element = temp->right->num;
     27         temp->right->num = temp->num;
     28         temp->num = element;
     29       }
     30     }
     31   }
     32 }
     33
    

    first ist das erste Element der Liste.

    Was mache ich falsch?
    Grüße



  • ach da war der Fehler! kann geclosed werden
    Hab ihn, danke.

    lg doublydoubly



  • 😕


Anmelden zum Antworten