Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Computado

Alguem Poderia Me Ajduar Com Qsort?

Recommended Posts

Alguem que intenda desse qsort aí poderia me passar icq, e-mail qualquer coisa,, preciso ordenar um vetor de uma estrutura em ordem crescente so que não tem jeito....ai eu passaria o codigo pra dar uma olhadinha e me ajudar, estou precisando muito disso....

Compartilhar este post


Link para o post
Compartilhar em outros sites


void quickSort(long int i, long int s)
{
  long int e=i, d=s;
  long int item = Array[ ((e+d)/2) ];
  while ( e <= d )
  {
    while ( Array[e] < item ) e++;
    while ( Array[d] > item ) d--;
    if ( e <= d )
    {
      long int aux; // Variável auxiliar para as trocas
      aux      = Array[e];
      Array[e] = Array[d]
      Array[d] = aux;
      d--;
      e++;
    }
  }
  if ( d-i > 0 ) quickSort(i,d);
  if ( s-e > 0 ) quickSort(e,s);
}

Aqui já é uma matéria sobre ordenação, excluindo as porcarias tipo bubble...

bem legal dá uma lida tem a explicação para os metodos de ordenação!

ordenação.pdf

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu de novo....esse qsort é uma droga, difícil de se entender de comeco, mas depois q se intende tu ve como é barbada,,,mas ainda não descobri isso heeh,,,,,,mas vou da uma lida nessa apostila,,,brigadao.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui vai um exemplo que vem na ajuda do VC6.

Se te parece simples demais, hoje à noite te envio alguma coisa mais real, programada por mim, eu já usei bastante (mas ainda apanho..)

/* QSORT.C: This program reads the command-line

* parameters and uses qsort to sort them. It

* then displays the sorted arguments.

*/

#include <stdlib.h>

#include <string.h>

#include <stdio.h>

int compare( const void *arg1, const void *arg2 );

void main( int argc, char **argv )

{

int i;

/* Eliminate argv[0] from sort: */

argv++;

argc--;

/* Sort remaining args using Quicksort algorithm: */

qsort( (void *)argv, (size_t)argc, sizeof( char * ), compare );

/* Output sorted list: */

for( i = 0; i < argc; ++i )

printf( "%s ", argv );

printf( "\n" );

}

int compare( const void *arg1, const void *arg2 )

{

/* Compare all of both strings: */

return _stricmp( * ( char** ) arg1, * ( char** ) arg2 );

}

Boa sorte !

Elga :bye:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×