Guest User

ShellSort

a guest
Apr 3rd, 2013
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.58 KB | None | 0 0
  1. void shellsort(unsigned *vetor, unsigned quantidade)
  2. {
  3.     int j, indice = quantidade;
  4.     unsigned i, aux;
  5.  
  6.     while( indice > 0 )
  7.     {
  8.         indice /= 2; /* atualiza o indice */
  9.  
  10.         for( i = indice; i < quantidade; i++ )
  11.         {
  12.             aux = vetor[i];
  13.  
  14.             j = i;
  15.             /* Compara os valores, baseado na distancia indice */
  16.             while( vetor[j - indice] > aux && j - indice >= 0 )
  17.             {
  18.                 vetor[j] = vetor[j - indice];
  19.                 j -= indice;
  20.             }
  21.  
  22.             vetor[j] = aux;
  23.         }
  24.     }
  25. }
Advertisement
Add Comment
Please, Sign In to add comment