Enviado em 02/11/2020 - 00:29h
Boa noite a todos, estou estudando um algoritmo de quick sort para ordenar um vetor, porem quem adicionar no código dois contadores para contar quantas comparações e atribuições são feitas durante o método, contudo, não estou conseguindo saber ao certo onde devo colocar. Segue o código:/* Função de partição do vetor para o quick sort */
int particao(int *v, int ini, int fim) {
int aux;
int pivo = v[ini];
int i = ini + 1;
int j = fim;
while (i <= j)
{
while ((i <= j) && v[i] <= pivo) {
i++; //tentei atribuição aqui e não funcionou
}
while(v[j] > pivo) {
j--; //tentei atribuição aqui e não funcionou
}
if (i < j)
{
aux = v[i];
v[i] = v[j];
v[j] = aux; //tentei atribuição aqui e não funcionou
}
}
aux = v[ini];
v[ini] = v[j];
v[j] = aux;
//tentei atribuição aqui e não funcionou
return j;
}
/* Auxiliar para a ordenação por QUICK SORT */
void quick_sortR(int *v, int ini, int fim) {
int j;
if (ini < fim)
{ //tentei atribuição aqui e não funcionou
j = particao(v, ini, fim);
if(ini < (j -1))
//tentei comparação aqui e não funcionou
quick_sortR(v, ini, fim);
if((j+1) < fim)
//tentei comparação aqui e não funcionou
quick_sortR(v, j + 1, fim);
}
}
/* Ordenação por QUICK SORT */
void quick_sort(int *v, int tam) {
quick_sortR(v, 0, tam -1);
}
Customizar a Instalação do Linux Debian com Preseed
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (4)
Aprendendo mais sobre Linux com livro (6)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (6)