Advertisement
juan_de99

Untitled

Nov 26th, 2020
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.86 KB | None | 0 0
  1. void ordenarLista(t_Lista *lista,int(*cmp)(const void*,const void*))
  2. {
  3.     t_Nodo *act=*lista,
  4.            *auxSig,
  5.            *auxAnt,
  6.            *menor,
  7.            *compara;
  8.  
  9.  
  10.     while(act->ant)
  11.     {
  12.         act=act->ant;
  13.     }
  14.  
  15.     while(act->sig)
  16.     {
  17.         *menor=*act;
  18.         compara=act->sig;
  19.         while(compara)
  20.         {
  21.  
  22.             if(cmp(menor->dato,compara->dato) > 0)
  23.                 menor=compara;
  24.             compara=compara->sig;
  25.         }
  26.  
  27.         auxAnt=menor->ant;
  28.         auxSig=menor->sig;
  29.  
  30.         if(menor != act)
  31.         {
  32.             if(auxAnt)
  33.                 auxAnt->sig=auxSig;
  34.             if(auxSig)
  35.                 auxSig->ant=auxAnt;
  36.             menor->ant=act->ant;
  37.             menor->sig=act;
  38.             act->ant=menor;
  39.         }
  40.  
  41.         act=act->sig;
  42.         printf("hola\n");
  43.     }
  44.  
  45.  
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement