[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: ordenaçao



Andrea Suman writes:
 > No exercício 12 da pagina, aquele sobre ordenação das linhas de um 
 > texto, eu não consegui entender essa parte abaixo será que alguem pode 
 > me explicar, ainda hoje antes da prova?

Pois é... esta parte é bem sutil.  Eu falei em aula que, como ordenacao é
assunto de aulas posteriores (em especial o quicksort), no momento a gente nao
ia estudar os detalhes deste algoritmo de ordenacao (acho que falei bem por
alto como esta coisa funciona, mas certamente nao entrei em detalhes).

Assim, pode esquecer os detalhes sobre o quicksort por agora.

Boa sorte!

Yoshi

 > <Função de ordenação>==
 > void quicksort(char **tab, int l, int r)
 > {  int j;  
 >   if (l < r) {
 >       char *pivot;
 >       char *ptr_aux;
 >       int i;
 >       pivot=tab[l];
 >        i=l -1;
 >        j=r+1;
 >       while (1) {
 >             while (strcmp(tab[--j],pivot)>0) ;  
 >             while (strcmp(tab[++i],pivot)<0) ;
 >             if (i >= j) break;
 >             ptr_aux=tab[i],tab[i]=tab[j],tab[j]=ptr_aux;
 >       }
 >     quicksort(tab, l, j);
 >     quicksort(tab, j+1, r);
 >     }
 > }
 > 
 > A chamada dessa função é: 
 > quicksort(texto,0,n_linhas-1);
 > 
 > 
 > ++++ Andrea Thomé Suman +++++
 > 
 > ______________________________________________________
 > Get Your Private, Free Email at http://www.hotmail.com